Hoje, o editor compartilhará com você uma coleção de instruções SQL. Amigos interessados, vamos aprender sobre isso com o editor!
1. Conecte o ASP para acessar o banco de dados:
Dimconn, mdbfile
mdbfile = server.mappath ("nome do banco de dados.mdb")
setConn = server.createObject ("adodb.connection")
Conn.Open "Driver = {MicrosoftAccessDriver
(*.mdb)}; uid = admin; pwd = senha do banco de dados; dbq = "& mdbfile
%>
2. Conecte o ASP ao banco de dados SQL:
Dimconn
setConn = server.createObject ("adodb.connection")
con.open "provedor = sqloledb; dados
Fonte = nome do servidor SQL ou endereço IP; uid = SA; PWD = Senha do banco de dados; Database = Nome do banco de dados
%>
Crie um objeto de conjunto de registros:
setrs = server.createObject ("adodb.recordset")
Rs.opensql Declaração, Conn, 3,2
3. Métodos de uso de comando SQL comuns:
(1) Filtragem de registro de dados:
sql = "Selecione*da tabela de dados onde o nome do campo = Valor do campo OrderBy Campo Nome [DEC]"
sql = "Selecione*da tabela de dados onde o nome do campo como ' % Valor do campo %' Nome do campo de ordem [DEC]"
sql = "SelectTop10*da tabela de dados onde o nome do campo OrderBy Field Nome [DEC]"
sql = "Selecione*da tabela de dados onde o nome do campo em ('valor 1', 'valor 2', 'valor 3')"
sql = "Selecione*da tabela de dados onde o nome do campo entre o valor 1 e o valor 2"
(2) Atualizar registros de dados:
sql = "Atualizar tabela de dados Conjunto de campo Nome do campo = Valor do campo onde expressão condicional"
sql = "Atualizar tabela de dados Conjunto de dados 1 = Valor 1, campo 2 = Valor 2 ... Campo n = Valor Nwhere Condição Expressão"
(3) Excluir registros de dados:
SQL = "Excluir da tabela de dados onde a expressão condicional"
SQL = "Tabela de dados deletefrom" (Exclua todos os registros na tabela de dados)
(4) Adicione registros de dados:
sql = "InsertIntTo Data Tabela (Campo 1, Campo 2, Campo 3…) (Valor 1, Valor 2, Valor 3…)"
sql = "InsertIntTo Target Data Tabela Selecione* da tabela de dados de origem" (adicione o registro da tabela de dados de origem à tabela de dados de destino)
(5) Função de estatísticas de registro de dados:
AVG (nome do campo) obtém um valor médio de uma coluna de tabela
Count (*| Nome do campo) Estatísticas sobre o número de linhas de dados ou estatísticas sobre o número de linhas de dados com valores em uma determinada coluna
Max (nome do campo) obtém o valor máximo de uma coluna de tabela
Min (nome do campo) obtém o menor valor de uma coluna de tabela
A soma (nome do campo) adiciona o valor da coluna de dados
Referenciar o método da função acima:
sql = "selectSum (nome do campo) como alias da tabela de dados onde expressão condicional"
setrs = Conn.Excute (SQL)
Use RS ("Alias") para obter o valor de cálculo estatístico e outras funções são usadas da mesma forma que acima.
(5) Estabelecimento e exclusão de tabelas de dados:
Nome da tabela de dados createTable (campo 1 tipo 1 (comprimento), campo 2 tipo 2 (comprimento)…)
Exemplo: CreateTableTab01 (NameVarchar (50), DATETIMEDefaultNow ())
Nome da tabela de dados de titulares (exclua permanentemente uma tabela de dados)
4. Métodos de gravação Objetos definidos:
Rs.movenext move o ponteiro de registro para baixo uma linha da posição atual
Rs.MovePrevious move o ponteiro recorde de uma linha da posição atual
Rs.movefirst move o ponteiro de registro para a primeira linha da tabela de dados
Rs.movelast move o ponteiro de registro para a última linha da tabela de dados
rs.absolutePosition = n Mova o ponteiro de registro para a linha n da tabela de dados
rs.absolutePage = n mova o ponteiro de registro para a primeira linha da página n
rs.pagesize = n Defina cada página para N registros
Rs.PagEcount retorna o número total de páginas de acordo com a configuração do PageSize
Rs.RecordCount retorna o número total de registros
Rs.BOF retorna se o ponteiro de registro excede o chefe da tabela de dados. Verdadeiro significa sim, false não é
Rs.eof retorna se o ponteiro de registro excede o final da tabela de dados. Verdadeiro significa sim, false não é
Rs.Delete exclui o recorde atual, mas o ponteiro recorde não se move para baixo
Rs.Addnew Adicionar registro ao final da tabela de dados
Rs.Update Atualiza registros da tabela de dados
------------------------------------------------------------------------------------ �
Método do objeto RecordSet
Método aberto
RecordSet.opensource, ActiveConnection, CursorType, LockType, Opções
Fonte
O objeto RecordSet pode ser conectado ao objeto de comando através da propriedade de origem. O parâmetro de origem pode ser um nome de objeto de comando, um comando sql, um nome de tabela de dados especificado ou um armazenado
Procedimento. Se este parâmetro for omitido, o sistema usará a propriedade de origem do objeto RecordSet.
ActiveConnection
O objeto RecordSet pode ser conectado ao objeto de conexão através da propriedade ActiveConnection. A ActiveConnection aqui pode ser um objeto de conexão ou um parâmetro de string contendo informações de conexão do banco de dados (ConnectionString).
Cursortype
O parâmetro cursortype do método aberto do objeto RecordSet indica qual tipo de cursor para iniciar os dados, incluindo adoenos fordoneamente, adoenkeyyset, adondinâmico e adotado, que são descritos da seguinte forma:
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Descrição constante de valor constante
--------------------------------------------------------------------------------------------------------------------------------------------------
Adotenforwardonly0 Valor padrão, inicia um cursor que só pode avançar (para a frente).
AddoenKeySet1 inicia um cursor do tipo Keyset.
Adondynamic2 inicia um cursor do tipo dinâmico.
ADOWENSTATIC3 inicia um cursor do tipo estático.
--------------------------------------------------------------------------------------------------------------------------------------------------
Os tipos de cursor acima afetarão diretamente todas as propriedades e métodos do objeto RecordSet. A lista a seguir explica a diferença entre eles.
--------------------------------------------------------------------------------------------------------------------------------------------------
RecordSet Property AddoEnforwardonyadopenKeySetadoPendynamicadopenstatic
--------------------------------------------------------------------------------------------------------------------------------------------------
AbsolutePage não suporta
A absoluta deposição não suporta
ActiveConnection Legável, escritor, legível, escritável, legível, escritor, legível, escritor
BOF somente leitura somente leitura somente leitura somente leitura somente leitura somente leitura
O favorito não suporta
Cachesize pode ser lido, escrever, ler, escrever, ler, escrever, ler, escrever, ler, escrever
Cursorlocation Legável, escritor, legível, escritor, legível, escritor, legível, escritor
O cursortype pode ser lido, escrever, ler, escrever, ler, escrever, ler, escrever, ler, escrever
Editmode somente leitura somente leitura somente leitura
Somente leitura
Eof leia somente leitura somente leitura somente leitura somente
Somente leitura
O filtro pode ser legível, escrito, legível, escritor, legível, escrito, legível, escritor
LockType pode ser lido, escrever, ler, escrever, ler, escrever, ler, escrever, ler, escrever
MarshalOptions legíveis, escritas, legíveis, escritas, legíveis, escritas, legíveis, escritas
MaxRecords legível, escritor, legível, escritor, legível, escritor, legível, escritor
O PageCount não suporta somente leitura somente leitura
Pagesize pode ler, escrever, ler, escrever, ler, escrever, ler, escrever, ler, escrever
RecordCount não suporta somente leitura somente leitura
A fonte pode ser legível, escrita, legível, escritor, legível, escrita, legível, escritor
Estado somente leitura somente leitura somente leitura somente leitura somente leitura somente leitura somente leitura
Status leitura somente leitura somente leitura somente leitura somente leitura somente leitura
Suporte de suporte ADDNEW Suporte de suporte
CancelBatch Suporte Suporte Suporte Suporte
Cancelar suporte de suporte de suporte de suporte
O clone não suporta ou não
Suporte de suporte de suporte fechado Suporte de suporte
Excluir suporte de suporte de suporte
Suporte de suporte a getRows Suporte de suporte
Move não suporta suporte de suporte de suporte
Movefirst Suporte Suporte Suporte Suporte
MoveLast não oferece suporte ao suporte de suporte de suporte
Suporte de suporte a Movenext Suporte Suporte
MovePrevious não suporta suporte de suporte de suporte
Suporte de suporte de suporte do nextrecordset
Suporte de suporte de suporte aberto
Suporte de suporte a Requisyery Suporte Suporte
O RESYNC não suporta suporte de suporte de suporte
Suporta suporte de suporte
Atualizar suporte para suporte de suporte Suporte de suporte
Suporte de suporte de suporte ATPUTIDADEBATCH Suporte de suporte
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
O método NextRecordSet não é aplicável ao banco de dados do Microsoft Access.
LockType
O parâmetro LockType do método aberto do objeto RecordSet indica que o tipo de bloqueio a ser adotado. Se este parâmetro for ignorado, o sistema usará a propriedade LockType do objeto RecordSet como o valor predefinido. Os parâmetros LockType incluem AdlockReadonly, AdlockPRSSIMISTIC, AdlockOtimistic e AdlockBatchOtimistic, etc., e são descritos da seguinte forma:
--------------------------------------------------------------------------------------------------------------------------------------------------
Descrição constante de valor constante
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
O valor padrão do AdlockReadonly1, o objeto RecordSet é iniciado no modo somente leitura e os métodos AddNew, Atualize, Excluir e outros métodos não podem ser executados.
adlockprssimistic2 Quando a fonte de dados está sendo atualizada, o sistema bloqueia temporariamente as ações de outros usuários para manter a consistência dos dados.
AdlockOtimistic3 Quando a fonte de dados estiver sendo atualizada, o sistema não bloqueará as ações de outros usuários. Outros usuários podem adicionar, excluir e modificar os dados.
adlockbatchOtimistic4 Quando a fonte de dados está sendo atualizada, outros usuários devem alterar a propriedade CursorLocation para AdudeclientBatch para aumentar os dados.
Excluir e modificar operações.
Parte especial do banco de dados SQLServer ASP Chamada
Response.Writews2 (1)
W2 = WS2 (2)
Response.Write "A"
Response.Write "B" & WS2 (3) e "C"
Response.Write "D" e W2
%>
Crie uma tabela
CreateTableFriends (name1varchar (10), Phonevarchar (15))
Ao contrário do acesso, o banco de dados padrão do SQLServer só pode ser lido para trás, o que é muito rigoroso.
Copie a tabela de cópias entre bancos de dados
Selecione*intocoolhe.dbo.mainfraMain
Exclua o banco de dados
DropDatabaseCoolhe
Encontre funções de reposição
UpdateComMend
Setgif Picture = Stuff (imagem gif, 1, 21, "http://192.168.1.2") // Substitua os 21 caracteres que começam do início do campo de imagem GIF
Mudança de registro
Campos adicionados automaticamente não podem ser alterados
A solução é a seguinte
CreateTablenew_employes
(
id_numintentity (1,1),
fnamevarchar (20),
Minitchar (1),
lnamevarchar (30)
)
Insertnew_employees
(Fname, Minit, Lname)
valores
('Karin', 'f', 'Josephs')
Modificar um registro
UPDATEMAIN
Setgif Picture = 'New' WhereID = 4331
Adicione um registro
Inserttarticles
(Categoria, título, link, UpdateTime)
valores
('CPU', 'Tecnologia e arquitetura do processador amdathlonxp', '20011024/01.asp', '10-24-2001')
Adicionando uma faixa de registro de uma tabela e outra tabela
insertmain
Selecta, B, C, DfromNew
Quando o principal possui um campo adicionado automaticamente, a nova tabela não pode selecionar o campo adicionado automaticamente e evite escrever o campo no exemplo acima.
Encontre todas as tabelas no banco de dados
Selecione*FromSoBjectSwherextype = 'u'
Calcule a soma de um campo
select'DownloadCount '= Sum (número de downloads)
Pesquisar informações de definição de definição
Nome da tabela sp_help
Modifique o nome da tabela
sp_rename'cool ',' elogio '
Adicione campos de tabela (se você adicionar vários campos por vez, nenhum bit será adicionado)
AltertableMain
Adicione o bit de interruptor
AltertableMainadd Age Char (3), Nome Varchar (8), Gênero Char (2)
Modificar o tipo de campo da tabela
O tipo de campo de nome original é char (10)
altertableTablenamealterColumnNamevarchar (20)
Modificar senha
EXECSP_PASSWORDNULL, 'OK', 'Victoria' (quando a senha está vazia) O nome de usuário de Victoria é o login
Execsp_password'ok ',' Senha de café 'alterada de OK para Coffee
altertableTable_nameaddcolumncolumn_namedatatype
Descrição: Adicione um campo (a sintaxe para excluir um campo não é sintaxe.)
altertableTable_nameaddPrimaryKey (column_name)
Descrição: Altere a definição da tabela e defina um campo como a chave primária.
ATTERTABLETABLE_NAMEDROPPRIMARYKEY (column_name)
Descrição: Exclua a definição de chave primária
Defina o valor padrão de um campo como 0
ATTERTABLETABLE_NAMEADDCONSTRAINTDF_TEST_FIELDNEDEFAULT (0) forFieldName
Não mude DF_TEST_FIELDNAME
Alterar o nome do campo
sp_rename'tablename.fieldname ',' newname ',' coluna ';
coluna não muda
Comentários
/*Selecione*Fromnews*/ou--Select*Fromnews-
Onde linhas horizontais são usadas para anotação de inserção
setrs = cn.execute (sql) Esta declaração retorna a estrutura após a execução de uma instrução SQL e atribui o resultado a Rs
cn.executesql Esta declaração apenas executa a instrução SQL
Tipo de dados +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ex
Smallint
Inteiro de 16 bits.
interger
Inteiro de 32 bits.
decimal (p, s)
O valor exato de P e o número inteiro decimal do tamanho de s. O valor exato de P refere -se aos valores de tamanho de todos os números (dígitos) e S refere -se ao número de dígitos após o decimal. Se não for especificado, o sistema será definido como p = 5; s = 0.
flutuador
Um número real de 32 bits.
dobro
Um número real de 64 bits.
char (n)
Uma sequência de n comprimento não pode exceder 254.
Varchar (n)
Para sequências cujo comprimento não é fixo e cujo comprimento máximo é n, n não pode exceder 4000.
Gráfico (n)
Como Char (n), mas sua unidade é dois caracteres duplos, N não pode exceder 127. Este formulário é usado para suportar dois comprimentos de caracteres, como caracteres chineses.
Vargraphic (n)
Uma corda de caractere duplo com comprimento variável e seu comprimento máximo é n, n não pode exceder 2000.
data
Inclui ano, mês e data.
tempo
Inclui horas, minutos e segundos.
Timestamp
Inclui ano, mês, dia, hora, minuto, segundo e um milésimo de segundo.
Esse tipo de procedimento armazenado para recuperação é fornecido no SQLServer.
1.sp_attach_db [@dbname =] dbname, [@filename1 =] filename_n
Adicione um banco de dados ao sistema, especifique o nome do banco de dados no DBNAME e FileName_N especifica o arquivo de banco de dados e os arquivos de log. Por exemplo, eu tenho uma biblioteca Voogiya. Pare o serviço SQLServer para fazer backup de voogiya_data.mdf, voogiya_log.ldf, inicie o SQLServer, exclua esta biblioteca e copie esses dois arquivos para o diretório de dados do SQLServer. Execute a seguinte declaração no Queryanalyzer:
Execsp_attach_db@dbname = nvoogiya,
@filename1 = nd: /mssql7/data/voogiya_data.mdf (bem -sucedido se n não for adicionado)
@filename2 = nd: /msql7/data/voogiya_log.ldf (bem -sucedido se n não for adicionado)
Esta biblioteca será adicionada ao SQLServerGroup.
2.sp_attach_single_file_db [@dbname =] dbname,
[@PhysName =] físico_name
Este comando é o mesmo que a função acima. Em Physical_name, basta escrever o nome do arquivo físico do banco de dados e o arquivo de log SQLServer será restabelecido. O procedimento armazenado a seguir deve ser executado primeiro:
sp_detach_db@dbname = dbname
O mesmo que acima é um exemplo:
Execsp_detach_db@dbname = voogiya
Execsp_attach_single_file_db@dbname = voogiya,
@physname = d: /msql7/data/voogiya_data.mdf
Deve -se notar que os usuários que executam os procedimentos armazenados acima devem estar em sysadmin
O exposto acima é uma introdução ao compartilhamento de coleções de instruções SQL. Eu espero que você possa gostar. Para mais conteúdo, continue prestando atenção ao site do Wuxin Technology Channel!