Lista completa de sentencias SQL
seleccione @@versión
2. Verifique los parámetros del sistema operativo de la máquina donde se encuentra la base de datos
exec master. xp_msver
3. Ver los parámetros de inicio de la base de datos
sp_configure
4. Ver el tiempo de inicio de la base de datos
seleccione convert(varchar(30), login_time, 120) de master ..sysprocesses donde spid=1
Ver el nombre del servidor de la base de datos y el nombre de la instancia
print 'Nombre del servidor....... ..:' convertir (varchar(30),@@NOMBRESERVIDOR)
imprimir 'Instancia.............:' convertir(varchar(30),@@NOMBRESERVICIO )
5. Ver todos los nombres y tamaños de bases de datos
sp_helpdb
SQL se utiliza para cambiar el nombre de la base de datos
sp_renamedb 'old_dbname', ' new_ dbname'
6. Ver todos los inicios de sesión de los usuarios de la base de datos
sp_helplogins
Ver todos los roles de los usuarios de la base de datos
sp_helpsrvrolemember
Script Fix_orphan_user para reparar usuarios huérfanos al migrar servidores
Script Fix_help_user para reparar usuarios huérfanos al migrar servidores
Script Fix_help_user o procedimiento almacenado LoneUser
Cambiar usuario propietario del objeto de datos
sp_changeobjectowner [@objectname =] 'object', [@newowner =] 'owner'
Nota: Cambiar cualquier parte del nombre del objeto puede dañar los scripts, y cualquier parte de él puede romper scripts y procedimientos almacenados.
El inicio de sesión del usuario de la base de datos en el servidor de respaldo se puede completar mediante el script add_login_to_aserver
Ver los permisos de usuario a nivel de objeto de la base de datos
sp_helprotect
7. Ver servidores vinculados
sp_helplinkedsrvlogin
Sp_helplinkedsrvlogin
Sp_helplinkedsrvlogin
El helplinkedsrvlogin
Ver remoto información de inicio de sesión del usuario de la base de datos
sp_helpremotelogin
8. Ver el tamaño de los objetos de datos en una base de datos específica
sp_spaceused @objname
Puedes también utilice el procedimiento almacenado sp_ toptables Ver las N tablas más grandes (el valor predeterminado es 50) para ver el tamaño de los objetos de datos en una base de datos específica
Ver la información de índice de los objetos de datos en una base de datos específica
sp_spaceused @objname
p>El procedimiento almacenado sp_ toptables puede ver hasta N (el valor predeterminado es 50) tablas.
sp_helpindex @objname
También puede ver el índice con más detalle utilizando el procedimiento almacenado SP_NChelpindex
SP_ NChelpindex @objname
Agrupado index Organice los registros en orden físico y el índice ocupará menos espacio.
Para tablas con operaciones DML clave-valor muy frecuentes, recomiendo usar índices y restricciones no agrupados y establecer valores predeterminados para ambos parámetros de factor de relleno.
Ver la información de restricciones de los objetos de datos en la base de datos
sp_helpconstraint @objname
9. Ver todos los procedimientos y funciones almacenados en la base de datos
usar @database_name
sp_stored_procedimientos
Ver el código fuente de los procedimientos y funciones almacenados
sp_helptext '@procedure_name'
Ver el código fuente que contiene caracteres específicos El nombre del objeto de datos de la cadena @str
seleccione object_name(id) distinto de syscomments donde texto como '@str'
Utilice CON ENCRIPTACIÓN parámetro delante de AS para crear una función o procedimiento almacenado cifrado
Utilice el procedimiento almacenado sp_decrypt para descifrar funciones y procedimientos almacenados cifrados
10.
sp_who
Ver usuarios activos y funciones en la base de datos de SQL Server Información del proceso
sp_who 'active'
Ver los bloqueos en la base de datos de SQL Server
sp_lock
Los números de proceso 1 - 50 son SQL Server El proceso interno del sistema, el número de proceso mayor que 50 es el proceso de conexión del usuario.
spid es el número de proceso, dbid es el número de base de datos y objid es el número de objeto de datos
Ver qué sentencias SQL está ejecutando el proceso
dbcc inputbuffer ()
Se recomienda utilizar el procedimiento almacenado sp_who3 mejorado para ver qué declaraciones SQL está ejecutando el proceso
Se recomienda utilizar el procedimiento almacenado sp_who3
Sp_who3 es un procedimiento almacenado mejorado.
Se recomienda utilizar el procedimiento almacenado sp_who3 mejorado para ver qué sentencias SQL está ejecutando el proceso
Se recomienda utilizar el procedimiento almacenado sp_who3 mejorado
sp_who3
Utilice el procedimiento almacenado sp_who_lock para comprobar si hay bloqueo muerto
sp_who_lock
11. Cómo ver y reducir los archivos de registro de la base de datos
Ver el tamaño de todos los registros de la base de datos files
dbcc sqlperf( logspace)
Si algunos archivos de registro son grandes, reduzca el registro de la base de datos del modelo de recuperación simple. Después de reducirlo, el tamaño de @database_name_log es M
<. p> Utilice no_log para hacer una copia de seguridad del registro @database_namedbcc lowerfile (@database_ name_log, 5)
12 Analizar la declaración SQL de SQL Server:
set. tiempo de estadísticas {on | off}
establecer tiempo de estadísticas {on | off}
establecer tiempo de estadísticas {on | off}
establecer estadísticas io {on | off}
Muestra gráficamente el plan de ejecución de consultas
Mostrar el plan de ejecución de consultas en Query Analyzer-gt; mostrar el plan de evaluación estimado (D)-Ctrl-L o hacer clic en el gráfico. en la barra de herramientas
Muestra el plan de ejecución de consultas gráficamente
set showplan_all {on | off}
set showplan_text { on off }
establecer perfil de estadísticas {on | off}
12.
13. Solucionar errores de inconsistencia con el error 3624 en NT Event Viewer
Indique la tabla a la que hace referencia la aplicación. que causó el error de inconsistencia, y luego restaurar la tabla desde una copia de seguridad o en otra máquina, y luego repararla
alter Database [@error_database_name] set single_user
Reparar la tabla con datos inconsistentes errores
dbcc checktable('@error_table_name', repara_allow_data _loss)
O lamentablemente elige reparar el nombre de la pequeña base de datos con errores inconsistentes
dbcc checkdb('@ error_database_name', Repair_allow_data_loss)
alterar la base de datos [@error_database_name] establecer multi_usuario
CHECKDB tiene 3 parámetros:
repair_allow_data_loss incluye la asignación y desasignación de filas y páginas para corregir errores de asignación, ajustes Estas reparaciones pueden causar cierta pérdida de datos debido a la estructura de filas o páginas y la eliminación de objetos de texto dañados.
Las operaciones de reparación se pueden realizar bajo una transacción de usuario para que el usuario pueda revertir los cambios.
Si revierte una reparación, la base de datos seguirá conteniendo errores y deberá restaurarse desde la copia de seguridad.
Si se omite una solución para un error debido al nivel de solución proporcionado, se omitirán todas las correcciones que dependan de esa solución.
Una vez completada la reparación, haga una copia de seguridad de la base de datos.
repai*_**st realiza operaciones de reparación pequeñas que no requieren mucho tiempo, como reparar claves adicionales en un índice no agregado.
Estas reparaciones se pueden realizar rápidamente y sin riesgo de perder datos.
repair_rebuild realiza todas las operaciones de reparación realizadas por repai*_**st, incluidas operaciones de reparación más largas, como la reconstrucción de índices.
No hay riesgo de perder datos al realizar estas reparaciones.
Agregar, eliminar y modificar usando el comando db.Execute(Sql). Ejecutar comando (Sql) para realizar operaciones
╔--------------------------╗
☆ Filtrado de registros de datos☆
╚--------------------╝
NOTA: Se pueden utilizar comillas simples y dobles incorrectamente (no medido)
Sql = "Seleccionar nombre de campo distinto de la tabla de datos"
La función Distinto se utiliza para consultar registros únicos en la tabla de inventario de la base de datos
Sql = "Seleccione Count(*) de la tabla de datos donde Nombre de campo 1gt;#18:0:0 # and fieldname1lt; #19:00# "
Función de conteo, consulta el número de registros en el tabla de recuento, "fieldname1" significa Mismo campo
Ejemplo:
set rs=conn.execute("select count(id) as idnum from news")
response.write rs(" idnum")
sql="seleccione * de la hoja de datos donde el nombre del campo está entre el valor 1 y el valor 2"
Sql="seleccione * de la hoja de datos donde el campo nombre entre #2003-8-10# y #2003-8-12#"
En un campo con un valor de categoría de fecha de 2003-8-10 19:55:08, busque desde 2003-8 -10 a 2003-8-12 para todos los registros, independientemente del tiempo o los minutos.
seleccione * de tb_name donde fecha y hora entre #2003-8-10# y #2003-8-12#
El formato de datos en el campo es 2003-8-10 19: 55:08, SQL encontrará todos los registros desde 2003-8-10 hasta 2003-8-12 en todos los registros, independientemente de la hora y la fecha.
Sql="seleccione * de la hoja de datos donde el nombre del campo = valor del campo ordenar por nombre del campo [desc]"
Sql="seleccione * de la hoja de datos donde el nombre del campo sea como ' valor del campo ' ordenar por nombre de campo [desc]"
Consulta difusa
Sql="seleccione los 10 mejores * de la hoja de datos donde el nombre de campo ordena por nombre de campo [desc]"
Encontrar los primeros 10 registros en la base de datos
Sql="select top n * form datasheet order by newid()"
Recuperar aleatoriamente varios registros de la base de datos
arriba n, n es el número de registros que se recuperarán
Sql="seleccione * de la tabla de datos donde se encuentra el nombre del campo ('valor 1', 'valor 2', 'valor 3')"
╔--------------------╗
☆ Agregar registro de datos☆
╚- - ------------------╝
sql="insertar en hoja de datos (campo1, campo2, campo3...)valueess (valor1, valor2, valor3 ..)".
sql="insertar valores en la tabla de datos (valor1, valor2, valor3...)"
No especificar un nombre de campo específico significa que los registros se agregarán en el orden de los campos en la tabla de datos
sql="insertar en la tabla de datos de destino seleccionar * de la tabla de datos de origen"
Agregar registros de la tabla de datos de origen a la tabla de datos de destino es una buena manera de agregue registros a la tabla de datos de destino.
Registros de la tabla de datos en la tabla de datos de destino
╔--------------------------╗
☆ Actualizar registro de datos☆ p>
╚--------------------╝
Sql="actualizar nombre de campo del conjunto de tabla de datos = valor de campo donde expresión condicional" /p>
Sql="actualizar conjunto de hojas de datos campo1=valor1, campo2=valor2...fieldn=valorn donde expresión condicional"
Sql ="actualizar conjunto de hojas de datos campo1=valor1, campo2=valor2 ... .campo n=valor n "
Actualiza incondicionalmente el valor del campo especificado en toda la tabla de datos
╔-- ----- -------------╗
☆ Eliminar registros de datos☆
╚----------- ----- ----╝
Sql="eliminar de la tabla de datos donde hay expresión condicional"
Sql="eliminar de la tabla de datos"
Si hay no hay condición, los datos serán eliminados todos los registros)
╔--------------------------╗
☆ Estadísticas del registro de datos Función☆
╚--------------------------╝
AVG(nombre de campo) Obtener el valor promedio de las columnas de la tabla
COUNT(*|nombre de campo) El número de filas de datos estadísticos o el número de filas de datos con valores en la columna
MAX(nombre del campo) Obtiene el número de columnas de la tabla Valor máximo
MIN(nombre del campo) Obtiene el valor mínimo de la columna de la tabla
SUM(nombre del campo) ) Agrega los valores de las columnas de datos
Referencia para las funciones anteriores:
sql="seleccione suma (nombre de campo) como alias de la tabla donde se encuentra la expresión condicional"
set rs=conn. excute(sql)
Utilice rs ("alias") para obtener un valor de recuento unificado. El uso de otras funciones es el mismo que el anterior.
Campo 2 Tipo 2 (longitud) ...)
Ejemplo: moveprevious mueve el puntero de registro una fila hacia arriba desde la posición actual
rs.movefirst mueve el puntero de registro a la tabla de datos
rs.movelast mueve el puntero de registro a la última fila de la tabla de datos
rs.absoluteposition=N mueve el puntero de registro a la enésima fila de la tabla de datos
rs.movefirst mueve el puntero de registro a la segunda fila de la tabla de datos
rs.movelast mueve el puntero de registro a la última fila de la tabla de datos
rs.absolutepage =Nabsolutepage =N Mueve el puntero de registro a la primera fila de la página N
rs.pagesize=N Establece cada página en N registros
rs.pagecount Devuelve la página según la página configuración de tamaño Número total de registros
rs.recordcount devuelve el número total de registros
rs.name=Nbof devuelve si el puntero del registro excede el punto inicial de la tabla, verdadero significa sí , falso significa no
rs.eof devuelve si el puntero del registro excede el final de la tabla, verdadero significa sí, falso significa no
rs.delete elimina el registro actual, pero el el puntero de registro no se moverá hacia abajo
rs. pagecount devuelve el número total de registros, verdadero significa sí, falso significa no. El puntero del registro no se moverá hacia abajo
rs.addnew agregará el registro al final de la tabla
rs.update actualizará el registro en la tabla
rs.addnew Agregará registros al final de la tabla
rs.update Actualizará registros en la tabla
rs.addnew Agregará registros al final de la tabla
rs.addnew Actualizar registros Agregar al final de la tabla