经典SQL语句
Jun 07, 2016 pm 05:39 PM一.数据库管理SQL语句 1、说明:创建数据库 CREATE DATABASE database-name 2、说明:删除数据库 drop database dbname 3、说明:创建视图:create view viewname as select statement 删除视图:drop view viewname 5、说明:删除新表: drop table tabname
一.数据库管理SQL语句
1、说明:创建数据库
CREATE DATABASE database-name
2、说明:删除数据库
drop database dbname
3、说明:创建视图:create view viewname as select statement
删除视图:drop view viewname
5、说明:删除新表: drop table tabname
6、修改数据库的名称:sp_renamedb 'old_name', 'new_name'
7、说明:复制表(只复制结构,源表名:a 新表名:b)
法一:select * into b from a where 11(仅用于SQlServer)
法二:select top 0 * into b from a
8、说明:拷贝表(拷贝数据,源表名:a 目标表名:b)
insert into b(a, b, c) select d,e,f from a
9、说明:跨数据库之间表的拷贝(具体数据使用绝对路径)
insert into b(a, b, c) select d,e,f from a in ‘具体数据库’ where 条件
例子:..from b in '"&Server.MapPath(".")&"\data.mdb" &"' where..
10、说明:列出数据库里所有的表名
select name from sysobjects where type='U' // U代表用户
11、说明:列出表里的所有的列名
select name from syscolumns where id=object_id('TableName')
12、说明:初始化表table1
TRUNCATE TABLE table1
13、获取当前数据库中的所有用户表
select Name from sysobjects where xtype='u' and status>=0
14、查询某一个表的字段和数据类型
select column_name,data_type from information_schema.columns
where table_name = '表名'
15、压缩数据库
dbcc shrinkdatabase(dbname)
16:查看与某一个表相关的视图、存储过程、函数
select a.* from sysobjects a, syscomments b where a.id = b.id and b.text like '%表名%'
二. 远程数据库操作
不同服务器数据库之间的数据操作
--创建链接服务器
exec sp_addlinkedserver 'ITSV ', ' ', 'SQLOLEDB ', '远程服务器名或ip地址 '
exec sp_addlinkedsrvlogin 'ITSV ', 'false ',null, '用户名 ', '密码 '
--查询示例
select * from ITSV.数据库名.dbo.表名
--导入示例
select * into 表 from ITSV.数据库名.dbo.表名
--以后不再使用时删除链接服务器
exec sp_dropserver 'ITSV ', 'droplogins '
--连接远程/局域网数据(openrowset/openquery/opendatasource)
--1、openrowset
--查询示例
select * from openrowset( 'SQLOLEDB ', 'sql服务器名 '; '用户名 '; '密码 ',数据库名.dbo.表名)
--生成本地表
select * into 表 from openrowset( 'SQLOLEDB ', 'sql服务器名 '; '用户名 '; '密码 ',数据库名.dbo.表名)
--把本地表导入远程表
insert openrowset( 'SQLOLEDB ', 'sql服务器名 '; '用户名 '; '密码 ',数据库名.dbo.表名)
select *from 本地表
--更新本地表
update b
set b.列A=a.列A
from openrowset( 'SQLOLEDB ', 'sql服务器名 '; '用户名 '; '密码 ',数据库名.dbo.表名)as a inner join 本地表 b
on a.column1=b.column1
--openquery用法需要创建一个连接
--首先创建一个连接创建链接服务器
exec sp_addlinkedserver 'ITSV ', ' ', 'SQLOLEDB ', '远程服务器名或ip地址 '
--查询
select *
FROM openquery(ITSV, 'SELECT * FROM 数据库.dbo.表名 ')
--把本地表导入远程表
insert openquery(ITSV, 'SELECT * FROM 数据库.dbo.表名 ')
select * from 本地表
--更新本地表
update b
set b.列B=a.列B
FROM openquery(ITSV, 'SELECT * FROM 数据库.dbo.表名 ') as a
inner join 本地表 b on a.列A=b.列A
--3、opendatasource/openrowset
SELECT *
FROM opendatasource( 'SQLOLEDB ', 'Data Source=ip/ServerName;User ID=登陆名;Password=密码 ' ).test.dbo.roy_ta
--把本地表导入远程表
insert opendatasource( 'SQLOLEDB ', 'Data Source=ip/ServerName;User ID=登陆名;Password=密码 ').数据库.dbo.表名
select * from 本地表
三. 查询语句
EXCEPT 运算符中但不在 TABLE2 中的行并消除所有重复行而派生出一个结果表。当 ALL 随 EXCEPT 一起使用时 (EXCEPT ALL),不消除重复行。
但不包含后面的空格
为起始位置,虚拟主机,
right(char_expr,int_expr) 返回字符串右边第int_expr个字符,服务器空间,还用left于之相反
isnull( check_expression , replacement_value )如果check_expression為空,則返回replacement_value的值,不為空,美国空间,就返回check_expression字符操作类
1、说明:包括所有在 (select a from tableA ) except (select a from tableB) except (select a from tableC)
2.按姓氏笔画排序:
Select * From TableName Order By CustomerName Collate Chinese_PRC_Stroke_ci_as //从少到多
3、 date num
2005-01-01 1
2005-01-01 3
2005-01-02 5
要求用一个SQL查出如下结果
2005-01-01 4
2005-01-02 5
合计 9
select date, sum(num) as num from table group by date
union
selec '合计'as date, sum(num) as num from table

인기 기사

인기 기사

뜨거운 기사 태그

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

뜨거운 주제











MySQL에서 테이블 잠금을 해제하는 명령문을 구현하는 방법은 무엇입니까?

MySQL에서 테이블을 생성하는 명령문을 구현하는 방법은 무엇입니까?

MySQL에서 사용자 권한을 취소하는 명령문을 구현하는 방법은 무엇입니까?

MySQL에서 사용자 비밀번호를 변경하는 명령문을 구현하는 방법은 무엇입니까?

Python의 흐름 제어 문을 이해하려면 여러 상황을 마스터해야 합니다.
