Hoy, el editor compartirá con usted una colección de declaraciones SQL. Amigos interesados, ¡aprendamos al respecto con el editor!
1. Conecte ASP para acceder a la base de datos:
dimconn, mdbfile
mdbfile = server.mappath ("Nombre de la base de datos.mdb")
setconn = server.createObject ("ADODB.Connection")
Conn.open "Driver = {MicrosoftaccessDriver
(*.mdb)}; uid = admin; pwd = contraseña de base de datos; dbq = "& mdbfile
%>
2. Conecte ASP a la base de datos SQL:
dimconn
setconn = server.createObject ("ADODB.Connection")
con.open "proveedor = sqloledb; datos
Source = SQL Server Name o Dirección IP; uid = sa; pwd = contraseña de base de datos; base de datos = nombre de la base de datos
%>
Cree un objeto de conjunto de registros:
setrs = server.createObject ("ADODB.Recordset")
Declaración Rs.Opensql, Conn, 3,2
3. Métodos de uso de comandos SQL comunes:
(1) Filtrado de registro de datos:
sql = "Seleccionar*de la tabla de datos donde el nombre del campo = Valor de campo Ordenby Nombre del campo [DESC]"
sql = "Seleccionar*de la tabla de datos donde el nombre del campo como ' % valor de campo %' Orderby Nombre de campo [DESC]"
SQL = "SELECTTOP10*Desde la tabla de datos donde el nombre del campo Nombre del campo Nombre del campo [DESC]"
sql = "seleccionar*de la tabla de datos donde el nombre del campo en ('valor 1', 'valor 2', 'valor 3')"
sql = "Seleccionar*de la tabla de datos donde el nombre del campo entre el valor 1 y el valor 2"
(2) Actualizar registros de datos:
sql = "Actualizar la tabla de datos Nombre del campo = Valor de campo Donde la expresión condicional"
sql = "Actualizar tabla de datos Conjunto del campo 1 = Valor 1, campo 2 = Valor 2 ... Campo n = Valor N Donde la expresión de condición"
(3) Eliminar registros de datos:
sql = "eliminar la tabla de datos donde la expresión condicional"
sql = "eliminar la tabla de datos" (eliminar todos los registros en la tabla de datos)
(4) Agregar registros de datos:
SQL = "Tabla de datos InsertInto (campo 1, campo 2, campo 3 ...) valores (valor 1, valor 2, valor 3 ...)"
sql = "Tabla de datos de destino InsertInto Seleccionar* de la tabla de datos de origen" (Agregue el registro de la tabla de datos de origen a la tabla de datos de destino)
(5) Función de estadísticas de registro de datos:
AVG (nombre de campo) obtiene un valor promedio de una columna de tabla
Conte (*| Nombre del campo) Estadísticas sobre el número de filas de datos o estadísticas sobre el número de filas de datos con valores en una determinada columna
Max (nombre de campo) obtiene el valor máximo de una columna de tabla
Min (nombre de campo) obtiene el valor más pequeño de una columna de tabla
Suma (nombre del campo) agrega el valor de la columna de datos
Referencia al método de función anterior:
sql = "selectSum (nombre de campo) como alias de la tabla de datos donde la expresión condicional"
setrs = conn.excute (SQL)
Use RS ("alias") para obtener el valor de cálculo estadístico, y otras funciones se usan igual que anteriormente.
(5) Establecimiento y eliminación de tablas de datos:
Nombre de la tabla de datos de creación (campo 1 tipo 1 (longitud), campo 2 tipo 2 (longitud) ...)
Ejemplo: CreateTableTab01 (nameVarchar (50), DataTimeDefaultNow ())
Nombre de la tabla de datos droptable (elimine permanentemente una tabla de datos)
4. Métodos de grabación de objetos establecidos:
Rs.Movenext mueve el puntero de registro por una línea desde la posición actual
Rs.MovePrevious mueve el puntero de registro en una línea desde la posición actual
Rs.MoveFirst mueve el puntero de registro a la primera fila de la tabla de datos
Rs.movelast mueve el puntero de registro a la última fila de la tabla de datos
Rs.AbsolutePosition = n Mueva el puntero de registro a la fila N de la tabla de datos
Rs.AbsolutePage = n Mueva el puntero de registro a la primera línea de la página N
rs.pagesize = n Establecer cada página en n registros
Rs.PageCount devuelve el número total de páginas de acuerdo con la configuración de páginas
Rs.RecordCount devuelve el número total de registros
RS.BOF Devuelve si el puntero de registro excede el jefe de la tabla de datos. Verdadero significa que sí, el falso es no
RS.EOF devuelve si el puntero de registro excede el final de la tabla de datos. Verdadero significa que sí, el falso es no
Rs.Delete elimina el registro actual, pero el puntero de registro no se mueve hacia abajo
Rs.addNew Agregar registro al final de la tabla de datos
Rs.Pdate actualiza registros de la tabla de datos
------------------------------------------------------------------------------------ � �
Método de objeto de registro
Método abierto
RecordSet.Opensource, Activeconnection, cursortype, locktype, opciones
Fuente
El objeto RegistroSet se puede conectar al objeto de comando a través de la propiedad de origen. El parámetro de origen puede ser un nombre de objeto de comando, un comando SQL, un nombre de tabla de datos especificado o un almacenado
Procedimiento. Si se omite este parámetro, el sistema utiliza la propiedad de origen del objeto RecordSet.
Activeconexión
El objeto de registro se puede conectar al objeto de conexión a través de la propiedad ActiveConnection. La ActiveConnection aquí puede ser un objeto de conexión o un parámetro de cadena que contiene información de conexión de la base de datos (ConnectionString).
Cursor
El parámetro cursortype del método abierto del objeto de conjunto de registros indica qué tipo de cursor inicia los datos, incluidos AdoptForWardonly, AdoptenKeyset, Adoptynamic y Adoptenstatic, que se describen de la siguiente manera:
---------------------------------------------------------------------------------------------------
Descripción del valor constante constante
----------------------------------------------------------------------------------------------------------------------------
AdoptForwardOnly0 Valor predeterminado, inicia un cursor que solo puede avanzar (hacia adelante).
AdopenKeySet1 inicia un cursor de tipo KeySet.
Adoptynamic2 inicia un cursor de tipo dinámico.
Adopenstatic3 comienza un cursor de tipo estático.
----------------------------------------------------------------------------------------------------------------------------
Los tipos de cursor anteriores afectarán directamente todas las propiedades y métodos del objeto Registro. La siguiente lista explica la diferencia entre ellos.
----------------------------------------------------------------------------------------------------------------------------
Propiedad de registro adoptando forwardonlyadopenkeysetadopendynamicadopenstatic
----------------------------------------------------------------------------------------------------------------------------
AbsoluTepage no es compatible
AbsolutePosition no es compatible
Activeconnection legible, escritable, legible, escrito, legible, escritable, legible, escritable
BOF lea solo leer solo leer solo leer solo leer solo leer solo
Marcador no es compatible
Cachesize se puede leer, escribir, leer, escribir, leer, escribir, leer, escribir, leer, escribir
Cursorlocation legible, escritable, legible, escritable, legible, escritable, legible, escritable
Cursortype se puede leer, escribir, leer, escribir, leer, escribir, leer, escribir, leer, escribir
EditMode de solo lectura de solo lectura de solo lectura
Solo lectura
Eof solo leer solo leer solo leer solo leer solo
Solo lectura
El filtro puede ser legible, escritable, legible, escritable, legible, escritable, legible, escritable
LockType se puede leer, escribir, leer, escribir, leer, escribir, leer, escribir, leer, escribir
Marshaloptions legible, escritable, legible, escritable, legible, escritable, legible, escritable
MaxRecords legible, escritable, legible, escritable, legible, escritable, legible, escritable
PageCount no es compatible con solo lectura de lectura
PageSize puede leer, escribir, leer, escribir, leer, escribir, leer, escribir, leer, escribir
RecordCount no es compatible con solo lectura de lectura
La fuente puede ser legible, escritable, legible, escritable, legible, escritable, legible, escritable
Estado de lectura solo lea solo leer solo leer solo leer solo leer solo leer solo
Estado Leer solo Leer solo Leer solo Leer solo Leer solo Leer solo Leer
AddNew Support Support Support Support
CancelBatch Support Support Support Support
Soporte de soporte de soporte de CancelUpdate Support
Clone no lo admite o no
Soporte de soporte de soporte de estrecho soporte
Eliminar soporte de soporte soporte soporte
GetROWS Support Support Support
Move no admite soporte de soporte de soporte de soporte
MoveFirst Support Support Support Support
Movelast no admite soporte de soporte de soporte de soporte
Soporte de soporte de soporte de MoveNext
MovePrevious no admite soporte de soporte de soporte de soporte
NEXTRECORDSET Support Support Support Support
Soporte de soporte de soporte de soporte abierto
Soporte de soporte de soporte de requisitos Soporte de soporte
Resync no admite soporte de soporte de soporte
Admite soporte de soporte
Actualizar soporte de soporte Soporte de soporte Soporte de soporte
Soporte de soporte de soporte de soporte de UpdateBatch Soporte de soporte
---------------------------------------------------------------------------------------------------
El método NEXTRecordSet no es aplicable a la base de datos de Microsoft Access.
Bloqueo
El parámetro LockType del método abierto del objeto Registro de registro indica el tipo de bloqueo que se debe adoptar. Si se ignora este parámetro, el sistema usará la propiedad LockType del objeto Registro como el valor preestablecido. Los parámetros LockType incluyen AdlockReadonly, AdlockPrsSimistic, AdlockOptimists y AdlockBatchOptimistic, etc., y se describen de la siguiente manera:
----------------------------------------------------------------------------------------------------------------------------
Descripción del valor constante constante
---------------------------------------------------------------------------------------------------
El valor predeterminado de AdlockReadonly1, el objeto RecordSet se inicia en modo de solo lectura, y no se pueden ejecutar AddNew, Update, Delete y otros métodos.
AdlockPrsSimistic2 Cuando se actualiza la fuente de datos, el sistema bloquea temporalmente las acciones de otros usuarios para mantener la consistencia de los datos.
AdlockOptimistic3 Cuando se actualiza la fuente de datos, el sistema no bloqueará las acciones de otros usuarios. Otros usuarios pueden agregar, eliminar y modificar los datos.
AdlockBatchOpTimistic4 Cuando se actualiza la fuente de datos, otros usuarios deben cambiar la propiedad CursorLocation a AdudeClientBatch para aumentar los datos.
Eliminar y modificar las operaciones.
Parte especial de la llamada de base de datos SQLServer ASP
Respuesta.WriteWS2 (1)
w2 = ws2 (2)
Respuesta. Escribe "A"
Response.Write "B" y WS2 (3) y "C"
Respuesta.WRITE "D" y W2
%>
Crear una mesa
CreateTablefriends (name1varchar (10), phoneVarchar (15))
A diferencia del acceso, la base de datos predeterminada de SQLServer solo se puede leer al revés, lo cual es muy estricto.
Copie la tabla de copia entre las bases de datos
SELECCIONAR*INTOCOOLHE.DBO.MainFrommain
Eliminar la base de datos
dropdatabasecoolhe
Encontrar funciones de reemplazo
UpdateCommend
setgif picture = shuff (GIF Picture, 1, 21, "http://192.168.1.2") // Reemplace los 21 caracteres que comienzan desde el comienzo del campo de la imagen GIF
Récord de cambio
Los campos agregados automáticamente no se pueden cambiar
La solución es la siguiente
CreatetableNew_employees
(
id_numIntIdentity (1,1),
fnamevarchar (20),
Minitchar (1),
lnamevarchar (30)
)
InsertNew_employees
(fname, minit, lname)
valores
('Karin', 'f', 'Josephs')
Modificar un registro
UpdateMain
setgif picture = 'new'whereID = 4331
Agregar un registro
Insertos
(categoría, título, enlace, UpdateTime)
valores
('CPU', 'AMDATHLONXP TECNOLOGÍA Y Arquitectura', '20011024/01.asp', '10-24-2001')
Agregar una pista de registro de una tabla y otra tabla
insertMain
SelectA, B, C, dFromnew
Cuando Main tiene un campo que se agrega automáticamente, la nueva tabla no puede seleccionar el campo agregado automáticamente y evitar escribir el campo en el ejemplo anterior.
Encuentra todas las tablas en la base de datos
SELECCIONAR*FromySObjectswhereExtype = 'U'
Calcule la suma de un campo
select'downloadCount '= sum (número de descargas)
Información de definición de la tabla de búsqueda
nombre de la tabla sp_help
Modificar el nombre de la tabla
sp_rename'cool ',' recomendar '
Agregar campos de tabla (si agrega múltiples campos a la vez, no se agregará ningún bit)
Semilla de altertable
Agregar bit de interruptor
altertableMainadd Age Char (3), nombre Varchar (8), Char de género (2)
Modificar el tipo de campo de tabla
El tipo de campo de nombre original es Char (10)
altertableTablenameLterColumnnameVarchar (20)
Modificar contraseña
Execsp_passwordnull, 'ok', 'victoria' (cuando la contraseña está vacía) el nombre de usuario de Victoria está inicio de sesión
Execsp_password'ok ', contraseña de' café 'cambiado de OK a Coffee
altertableTable_NameaddColumnColumn_Namedatatype
Descripción: Agregue un campo (la sintaxis para eliminar un campo no es sintaxis).
altertableTable_NAMEDDPrimaryKey (column_name)
Descripción: Cambie la definición de la tabla y establezca un campo como clave principal.
altertableTable_NamedRopPrimaryKey (column_name)
Descripción: Eliminar la definición de clave principal
Establezca el valor predeterminado de un campo en 0
AltertableTable_NameaddConstraintdf_test_fieldnamedefault (0) ForfieldName
No cambie df_test_fieldname
Cambiar el nombre del campo
sp_rename'tablename.fieldname ',' Newname ',' columna ';
La columna no cambia
Comentario
/*Seleccionar*de News*/o --select*fromNews-
Donde se utilizan líneas horizontales para la anotación de inserción
setRS = cn.execute (SQL) Esta declaración devuelve la estructura después de la ejecución de una instrucción SQL y asigna el resultado a RS
cn.executesql Esta declaración solo ejecuta la instrucción SQL
Los datos tipo ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Útil
Pequeño
Integer de 16 bits.
intergero
Entero de 32 bits.
decimal (P, S)
El valor exacto de P y el entero decimal del tamaño de s. El valor exacto de P se refiere a los valores de tamaño de todos los números (dígitos), y S se refiere al número de dígitos después del decimal. Si no se especifica, el sistema se establecerá en p = 5; s = 0.
flotar
Un número real de 32 bits.
doble
Un número real de 64 bits.
char (n)
Una cadena de n longitud no puede exceder 254.
varchar (n)
Para cadenas cuya longitud no es fija y cuya longitud máxima es n, N no puede exceder los 4000.
Gráfico (N)
Al igual que Char (N), pero su unidad es de dos caracteres dobles, N no puede exceder 127. Esta forma se usa para soportar dos longitudes de caracteres, como los caracteres chinos.
Vargraphic (N)
Una cadena de doble caracteres con una longitud variable y su longitud máxima es n, N no puede exceder el 2000.
fecha
Incluye año, mes y fecha.
tiempo
Incluye horas, minutos y segundos.
marca de tiempo
Incluye año, mes, día, hora, minuto, segundo y milésimo segundo.
Este tipo de procedimiento almacenado para la recuperación se proporciona en SQLServer.
1.sp_attach_db [@dbname =] dbname, [@filename1 =] filename_n
Agregue una base de datos al sistema, especifique el nombre de la base de datos en DBName, y FileName_N especifica el archivo de la base de datos y los archivos de registro. Por ejemplo, tengo una biblioteca Voogiya. Detenga el servicio SQLServer para hacer una copia de seguridad de Voogiya_data.mdf, voogiya_log.ldf, inicie SQLServer, elimine esta biblioteca y luego copie estos dos archivos al directorio de datos SQLServer. Ejecute la siguiente declaración en QueryAnalyzer:
Execsp_attach_db@dbname = nvoogiya,
@filename1 = nd: /mssql7/data/voogiya_data.mdf, (exitoso si n no se agrega)
@filename2 = nd: /mssql7/data/voogiya_log.ldf (exitoso si n no se agrega)
Esta biblioteca se agregará al SQLServerGroup.
2.sp_attach_single_file_db [@dbname =] dbname,
[@PhysName =] Physical_Name
Este comando es el mismo que la función anterior. En Physical_Name, simplemente escriba el nombre del archivo físico de la base de datos, y se restablecerá el archivo de registro SQLServer. El siguiente procedimiento almacenado debe ejecutarse primero:
sp_detach_db@dbname = dbname
Lo mismo que el anterior es un ejemplo:
Execsp_detach_db@dbname = voogiya
Execsp_attach_single_file_db@dbname = voogiya,
@PhysName = D: /MSSQL7/DATA/VOOGIYA_DATA.MDF
Cabe señalar que los usuarios que ejecutan los procedimientos almacenados anteriormente deben estar en Sysadmin
Lo anterior es una introducción al intercambio de colecciones de declaraciones SQL. Espero que te pueda gustar. Para obtener más contenido, ¡continúe prestando atención al sitio web del canal de tecnología Wuxin!