SQL获取所有数据库名、表名、储存过程以及参数列表===

SQL获取所有数据库名、表名、储存过程以及参数列表===
SQL获取所有数据库名、表名、储存过程以及参数列表===

SQL获取所有数据库名、表名、储存过程以及参数列表

1.获取所有用户名:

SELECT name FROM Sysusers where status='2' and islogin='1'

islogin='1'表示帐户

islogin='0'表示角色

status='2'表示用户帐户

status='0'表示糸统帐户

2.获取所有数据库名:

SELECT Name FROM Master..SysDatabases ORDER BY Name

3.获取所有表名

SELECT Name FROM DatabaseName..SysObjects Where XType='U' ORDER BY Name

XType='U':表示所有用户表;

XType='S':表示所有系统表;

4.获取所有字段名:

SELECT Name FROM SysColumns WHERE id=Object_Id('TableName')

5.获取数据库所有类型

select name from systypes

6.获取主键字段

SELECT name FROM SysColumns WHERE id=Object_Id('表名') and colid=(select top 1 keyno from sysindexkeys where id=Object_Id('表名'))

[综合网络资料整理]

1.获取所有数据库名:

(1)、Select Name FROM Master..SysDatabases order by Name

2.获取所有表名:

(1)、Select Name FROM SysObjects Where XType='U' orDER BY Name

XType='U':表示所有用户表;

XType='S':表示所有系统表;

(2)、SELECT name FROM sysobjects WHERE type = 'U' AND sysstat = '83'

注意:一般情况只需要type = 'U',但有时候会有系统表混在其中(不知道什么原因),加上后面一句后就能删除这些系统表了

3.获取所有字段名:

(1)、Select Name FROM SysColumns Where id=Object_Id('TableName')

(2)、SELECT https://www.360docs.net/doc/d417794407.html,,https://www.360docs.net/doc/d417794407.html,,syscolumns.isnullable,syscolumns.length FROM syscolumns, systypes WHERE syscolumns.x usertype = systypes.xusertype AND "syscolumns.id = object_id('tableName')

注意点:

(a)这里为了重点突出某些重要内容,选取了其中几项信息输出。

(b)syscolumns表中只含有数据类型编号,要获取完整的名字需要从systypes表中找,一般用户使用的数据类型用xusertype对应比较好,不会出现一对多的情况。

(c)syscolumns.length得到的是物理内存的长度,所以nvarchar和varchar等类型在数据库中的显示是这个的一半。

4、得到表中主键所包含的列名:

SELECT https://www.360docs.net/doc/d417794407.html, FROM syscolumns,sysobjects,sysindexes,sysindexkeys WHERE syscolumns.id = object_id('tablename') AND sysobjects.xtype = 'PK' AND sysobjects.parent_obj = syscolumns.id AND sysindexes.id = syscolumns.id AND https://www.360docs.net/doc/d417794407.html, = https://www.360docs.net/doc/d417794407.html, AND sysindexkeys.id = syscolumns.id AND sysindexkeys.indid = sysindexes.indid AND syscolumns.colid = sysindexk eys.colid

注意:这是在4张系统表中寻找的,关系比较复杂,大致可以表示为:

syscolumns中存有表中的列信息和表id,sysobjects表中存有主键名字(即PK_Table类似)和表id,sysindexes中存有主键名字和表id和i ndex编号,sysindexkeys中存有表id和index编号和列编号,一项一项对应起来后就能找到列名了。

另外的SQL代码

select https://www.360docs.net/doc/d417794407.html,, https://www.360docs.net/doc/d417794407.html,, syscolumns.length from syscolumns

left join systypes on syscolumns. xusertype =systypes. xusertype

where id=(select id from sysobjects where name='订货主档');

go;

或者用这样的写法,执行结果一样:

select https://www.360docs.net/doc/d417794407.html,, https://www.360docs.net/doc/d417794407.html,, syscolumns.length from syscolumns,systypes

where(syscolumns.id=object_id('订货主档')and syscolumns.xusertype=systypes.xusertype)

order by syscolumns.colorder;

go

执行结果:(字段只出现一次,正常)

订单号码 int 4

客户编号 nvarchar 10

员工编号 int 4

订单日期 datetime 8

要货日期 datetime 8

送货日期 datetime 8

送货方式 int 4

运费 money 8

收货人 nvarchar 80

送货地址 nvarchar 120

送货城市 nvarchar 30

送货行政区 nvarchar 30

送货邮政编码 nvarchar 20

送货国家地区 nvarchar 30

select https://www.360docs.net/doc/d417794407.html,, https://www.360docs.net/doc/d417794407.html,, syscolumns.length from syscolumns

left join systypes on syscolumns.xtype=systypes.xtype

where id=(select id from sysobjects where name='订货主档');

go;

执行结果:(部分字段出现两次,数据类型不同)

订单号码 int 4

客户编号 nvarchar 10

客户编号 sysname 10

员工编号 int 4

订单日期 datetime 8

订单日期出生日期类型 8

要货日期 datetime 8

要货日期出生日期类型 8

送货日期 datetime 8

送货日期出生日期类型 8

送货方式 int 4

运费 money 8

运费薪水类型 8

收货人 nvarchar 80

收货人 sysname 80

送货地址 nvarchar 120

送货地址 sysname 120

送货城市 nvarchar 30

送货城市 sysname 30

送货行政区 nvarchar 30

送货行政区 sysname 30

送货邮政编码 nvarchar 20

送货邮政编码 sysname 20

送货国家地区 nvarchar 30

送货国家地区 sysname 30

查询存储过程DepartmentSalaryInfo所有的信息,信息包含在系统视图syscolumns,systypes中

select syscolumns.*, systypes.*from syscolumns

left join systypes on syscolumns.xusertype=systypes.xusertype

where id=(select id from sysobjects where name='DepartmentSalaryInfo');

go

exec sp_procedure_params_rowset @procedure_name ='DepartmentSalaryInfo';

go

执行结果:

北风贸易 dbo DepartmentSalaryInfo;1 @RETURN_VALUE 0 4 0 NULL 0 3 NULL NULL 10 NUL

L NULL int int

北风贸易 dbo DepartmentSalaryInfo;1 @department 1 1 0 NULL 1 129 10 10 NULL NULL NUL L varchar varchar

北风贸易 dbo DepartmentSalaryInfo;1 @average 2 2 0 NULL 1 6 NULL NULL 19 NULL NU LL money money

北风贸易 dbo DepartmentSalaryInfo;1 @maximum 3 2 0 NULL 1 6 NULL NULL 19 NULL NU LL money money

北风贸易 dbo DepartmentSalaryInfo;1 @minimum 4 2 0 NULL 1 6 NULL NULL 19 NULL NU LL money money

--存储过程中的参数名,参数类型,参数长度

select https://www.360docs.net/doc/d417794407.html,, https://www.360docs.net/doc/d417794407.html,, syscolumns.length from syscolumns

left join systypes on syscolumns.xusertype=systypes.xusertype

where id=(select id from sysobjects where name='DepartmentSalaryInfo');

SQL简介结构化查询语言SQL(Structure Query Language)

SQL简介 结构化查询语言SQL(Structure Query Language)是关系数据库的标准语言,是数据库领域中一个主流语言,1974年产生。 一、SQL概述 1、SQL语言特点 (1)是一种一体化语言 集数据定义、数据操纵、数据控制功能于一体。可以完成数据库中全部操作,包括定义关系模式、录入数据、查询、维护等。 (2)是一种高度非过程化语言 不需一步步告诉“如何做”,只需描述“做什么”。SQL可将要求交与系统自动完成。存取路径的选择以及SQL语句的操作过程由系统自动完成。减轻了用户负担,而且有利于提高数据独立性。 (3)语言非常简洁 只用9动词就能完成数据库核心功能。数据定义:CREATE、DROP、ALTER;数据操纵:SELECT INSERT、UPDA TE、DELETE;数据控制:GRANT (设置用户权限)、REVOKE (取消设置用户权限)。 (4)同一种语法结构提供两种使用方式 ◆自含式语言:能够独立地用于联机交互的使用方式。 ◆嵌入式语言:能够嵌入到高级语言(例如C,COBOL,FORTRAN)程序中,供程序员设计程序时使用。 二、SQL基本操作举例 1、定义基本表(创建基本表) ◆格式: CREATE TABLE<表名>(<列名1><数据类型>[列级约束1] [,<列名2><数据类型>[列级约束2]……] [,<表级约束>]) [其他参数]; <表名>:是所要创建基本表的名字。基本表由多个列(属性)组成。 列级约束:涉及相应属性列的完整性约束条件,一般包括是否允许为空值、取值范围

约束等。 表级约束:涉及一个或多个属性列的完整性约束条件,一般包括复合属性构成的主、外关键字说明等。 其他参数:不是标准选项(不是必要的),用于与物理存储有关的说明。 定义表的各个属性时需指明属性名、数据类型、长度。 (1)列级约束与表级约束包含内容 主码约束(PRIMARY KEY)、参照完整性约束、唯一性约束(UNIQUE)、非空值约束(NOT NULL)、取值约束(CHECK)。 (2)数据类型 不同的数据库系统支持的数据类型不完全相同,在sql server 下:字符型(char)、整型(int)、短整型(smallint)。 2、修改基本表 ◆注意:不同环境下,SQL修改表语句格式会有所不同,本教案以SQL SERVER为运行环境。 ◆格式: ALTER TABLE <表名>[ADD<新列名1><数据类型><约束1> [,<新列名2><数据类型><约束2>…]] [DROP<约束名>] [Alter column <列名><数据类型>]; <表名> :要修改的基本表。 ADD子句:增加新列和新的完整性约束条件。 Alter column子句:用于修改列名和数据类型。 3、删除基本表 ◆格式: DROP TABLE <表名>; 4、SQL查询语句 ◆格式: SELECT <表达式l>,<表达式2>,…,<表达式n> FROM <关系1>,<关系2>,…,<关系m> [WHERE <条件表达式>]

SQL语句的添加、删除、修改

SQL语句的添加、删除、修改 SQL语句的添加、删除、修改虽然有如下很多种方法,但在使用过程中还是不够用,不知是否有高手把更多灵活的使用方法贡献出来? {select * from 数据表 where 字段名 between 值1 and 值2 insert into 数据表 (字段1,字段2,字段3 …) valuess (值1,值2,值3 …) update 数据表 set 字段名=字段值 where 条件表达式 delete from 数据表 where 条件表达式} 添加、删除、修改使用db.Execute(Sql)命令执行操作 ╔--------------------╗ ☆数据记录筛选☆ ╚--------------------╝ 注意:单双引号的用法可能有误(没有测式) Sql = "Select Distinct 字段名 From 数据表" Distinct函数,查询数据库存表内不重复的记录 Sql = "Select Count(*) From 数据表 where 字段名1>#18:0:0# and 字段名1< #19:00# " count函数,查询数库表内有多少条记录,“字段名1”是指同一字段 例: set rs=conn.execute("select count(id) as idnum from news") response.write rs("idnum") sql="select * from 数据表 where 字段名 between 值1 and 值2" Sql="select * from 数据表where 字段名between #2003-8-10# and #2003-8-12#" 在日期类数值为2003-8-10 19:55:08 的字段里查找2003-8-10至2003-8-12的所有记录,而不管是几点几分。 select * from tb_name where datetime between #2003-8-10# and #2003-8-12# 字段里面的数据格式为:2003-8-10 19:55:08,通过sql查出2003-8-10至2003-8-12的所有纪录,而不管是几点几分。

数据库表结构设计参考

数据库表结构设计参考

表名外部单位表(DeptOut) 列名数据类型(精度范围)空/非空约束条件 外部单位ID 变长字符串(50) N 主键 类型变长字符串(50) N 单位名称变长字符串(255) N 单位简称变长字符串(50) 单位全称变长字符串(255) 交换类型变长字符串(50) N 交换、市机、直送、邮局单位邮编变长字符串(6) 单位标识(英文) 变长字符串(50) 排序号整型(4) 交换号变长字符串(50) 单位领导变长字符串(50) 单位电话变长字符串(50) 所属城市变长字符串(50) 单位地址变长字符串(255) 备注变长字符串(255) 补充说明该表记录数约3000条左右,一般不做修改。初始化记录。 表名外部单位子表(DeptOutSub) 列名数据类型(精度范围)空/非空约束条件 外部子单位ID 变长字符串(50) N 父ID 变长字符串(50) N 外键 单位名称变长字符串(255) N 单位编码变长字符串(50) 补充说明该表记录数一般很少 表名内部单位表(DeptIn) 列名数据类型(精度范围)空/非空约束条件 内部单位ID 变长字符串(50) N 主键 类型变长字符串(50) N 单位名称变长字符串(255) N 单位简称变长字符串(50) 单位全称变长字符串(255) 工作职责 排序号整型(4) 单位领导变长字符串(50) 单位电话(分机)变长字符串(50) 备注变长字符串(255)

补充说明该表记录数较小(100条以内),一般不做修改。维护一次后很少修改 表名内部单位子表(DeptInSub) 列名数据类型(精度范围)空/非空约束条件内部子单位ID 变长字符串(50) N 父ID 变长字符串(50) N 外键 单位名称变长字符串(255) N 单位编码变长字符串(50) 单位类型变长字符串(50) 领导、部门 排序号Int 补充说明该表记录数一般很少 表名省、直辖市表(Province) 列名数据类型(精度范围)空/非空约束条件ID 变长字符串(50) N 名称变长字符串(50) N 外键 投递号变长字符串(255) N 补充说明该表记录数固定 表名急件电话语音记录表(TelCall) 列名数据类型(精度范围)空/非空约束条件ID 变长字符串(50) N 发送部门变长字符串(50) N 接收部门变长字符串(50) N 拨打电话号码变长字符串(50) 拨打内容变长字符串(50) 呼叫次数Int 呼叫时间Datetime 补充说明该表对应功能不完善,最后考虑此表 表名摄像头图像记录表(ScreenShot) 列名数据类型(精度范围)空/非空约束条件ID 变长字符串(50) N 拍照时间Datetime N 取件人所属部门变长字符串(50) N 取件人用户名变长字符串(50) 取件人卡号变长字符串(50) 图片文件BLOB/Image

SQL查询(图书数据库-题目)

SQL查询 设有一图书馆数据库,包括三个表:图书表、读者表、借阅表。三个表的结构如下图所示。要求:完成以下习题。 表1图书表结构 表2读者表结构 表3借阅表结构

(1)创建图书馆数据库 1.用SQL语句创建图书馆数据库。 答:CREATE DATABASE 图书馆 (2)创建图书馆数据库的三个表。(在SQL Server 2008平台环境下实现) 2.创建图书表 3.创建读者表 4.创建借阅表 (3)针对以上三个表,用SQL语言完成以下各项查询: 5.查询全体图书的信息,其中单价打8折,并且将该列设置别名为’打折价’。 6.显示所有借阅者的读者号,并去掉重复行。 7.查询所有单价不在20到30之间的图书信息。 8.查询机械工业出版社、科学出版社、人民邮电出版社的图书信息 9.查询既不是机械工业出版社、也不是科学出版社出版的图书信息 10.查找姓名的第二个字符是’建’并且只有两三个字符的读者的读者号、姓名。 11.查找姓名不是以’王’、’张’或’李’开头的所有读者的读者号、姓名。 12.查询无归还日期的借阅信息。 13.查询机械工业出版社或科学出版社出版的图书名,出版社,单价。 14.求读者的总人数 15.求借阅了图书的读者的总人数 16.求机械工业出版社图书的平均价格、最高价、最低价。 17.查询借阅图书本数超过2本的读者号、总本数。并按借阅本数值从大到小排序。 (4)针对以上三个表,用SQL语言完成以下各项多表连接查询、子查询、组合查询 18.查询读者的读者号、姓名、借阅的图书名、借出日期、归还日期。 19.查询借阅了机械工业出版社出版,并且书名中包含’数据库’三个字的图书的读者,显示 读者号、姓名、书名、出版社,借出日期、归还日期。 20.查询至少借阅过1本机械工业出版社出版的书的读者的读者号、姓名、书名,借阅本 数,并按借阅本数多少降序排列。 21.查询与’王平’的办公电话相同的读者的姓名。

数据库增删改查基本语句

数据库增删改查基本语句 adoquery1.Fielddefs[1].Name; 字段名 dbgrid1.columns[0].width:=10; dbgrid的字段宽度 adoquery1.Fields[i].DataType=ftString 字段类型 update jb_spzl set kp_item_name=upper(kp_item_name) 修改数据库表中某一列为大写select * from master.dbo.sysobjects ,jm_https://www.360docs.net/doc/d417794407.html,ers 多库查询 adotable1.sort:='字段名称ASC' adotable排序 SQL常用语句一览 sp_password null,'新密码','sa' 修改数据库密码 (1)数据记录筛选: sql="select * from 数据表where 字段名=字段值orderby 字段名[desc] " sql="select * from 数据表where 字段名like '%字段值%' orderby 字段名[desc]" sql="select top10 * from 数据表where 字段名orderby 字段名[desc]" sql="select * from 数据表where 字段名in('值1','值2','值3')" sql="select * from 数据表where 字段名between 值1 and 值2" (2)更新数据记录: sql="update 数据表set 字段名=字段值where 条件表达式" sql="update 数据表set 字段1=值1,字段2=值2……字段n=值n where 条件表达式" (3)删除数据记录: sql="delete from 数据表where 条件表达式" sql="delete from 数据表"(将数据表所有记录删除) (4)添加数据记录: sql="insert into 数据表(字段1,字段2,字段3…) values(值1,值2,值3…)" sql="insert into 目标数据表select * from 源数据表"(把源数据表的记录添加到目标数据表)

SQL数据库修改表结构

S Q L数据库修改表结构-CAL-FENGHAI-(2020YEAR-YICAI)_JINGBIAN

SQL数据库修改表结构 修改表结构包括: 增加字段、删除字段、增加约束、删除约束、修改缺省值、修改字段数据类型、重命名字段、重命名表。 所有这些动作都是用 ALTER TABLE 命令执行的。 1、增加字段 ALTER TABLE products ADD description text; 你也可以同时在该字段上定义约束,使用通常的语法: ALTER TABLE products ADD description text CHECK (description <> ''); 实际上,所有在CREATE TABLE里描述的可以应用于字段之选项都可以在这里使用。不过,我们要注意的是缺省值必须满足给出的约束,否则ADD 将会失败。另外,你可以在你正确填充了新字段的数值之后再增加约束(见下文)。 2、删除字段 要删除一个字段,使用下面这样的命令: ALTER TABLE products DROP COLUMN description; 不管字段里有啥数据,都会消失。和这个字段相关的约束也会被删除。不过,如果这个字段被另外一个表的外键所引用,PostgreSQL 则不会隐含地删除该约束。你可以通过使用 CASCADE 来授权删除任何依赖该字段的东西:ALTER TABLE products DROP COLUMN description CASCADE; 3、增加约束 要增加一个约束,使用表约束语法。比如: ALTER TABLE products ADD CHECK (name <> ''); ALTER TABLE products ADD CONSTRAINT some_name UNIQUE (product_no); ALTER TABLE products ADD FOREIGN KEY (product_group_id) REFERENCES product_groups; ALTER TABLE Teacher add constraint df_sex default('男') for sex 要增加一个不能写成表约束的非空约束,使用下面语法: ALTER TABLE products ALTER COLUMN product_no SET NOT NULL; 这个约束将立即进行检查,所以表在添加约束之前必须符合约束条件。 4、删除约束 要删除一个约束,你需要知道它的名字。如果你给了它一个名字,那么事情就好办了。否则系统会分配一个生成的名字,这样你就需要把它找出来

SQL数据库中的增删改查总结1

一、增:有2种方法 1.使用insert插入单行数据: 语法:insert [into]<表名> [列名] values <列值> 例:insert into Strdents (姓名,性别,出生日期) values ('邢金聪','男','1990/6/15') 注意:如果省略表名,将依次插入所有列 2.使用insert,select语句将现有表中的数据添加到已有的新表中 语法:insert into <已有的新表> <列名> select <原表列名> from <原表名> 例:insert into addressList ('姓名','地址','电子邮件')selectname,address,email from Strdents 注意:查询得到的数据个数、顺序、数据类型等,必须与插入的项保持一致 二、删:有2中方法 1.使用delete删除数据某些数据 语法:delete from <表名> [where <删除条件>] 例:delete from awhere name='邢金聪'(删除表a中列值为邢金聪的行) 注意:删除整行不是删除单个字段,所以在delete后面不能出现字段名 2.使用truncate table 删除整个表的数据

语法:truncate table<表名> 例:truncate table addressList 注意:删除表的所有行,但表的结构、列、约束、索引等不会被删除;不能 用于有外建约束引用的表 三、改 使用update更新修改数据 语法:update <表名> set <列名=更新值> [where <更新条件>] 例:truncate table addressList 注意:删除表的所有行,但表的结构、列、约束、索引等不会被删除;不能 用于有外建约束引用的表 四、查 1.普通查询 语法:select <列名> from <表名> [where <查询条件表达试>] [order by<排序的列 名>[asc或desc]] 1).查询所有数据行和列 例:select * from a 说明:查询a表中所有行和 2).查询部分行列--条件查询 例:select i,j,kfrom a where f=5 说明:查询表a中f=5的所有行,并显示i,j,k3列

mysql修改表结构命令大全

Mysql数据库表结构修改命令大全一、原表的结构如下: CREATE TABLE person( number int(11) DEFAULT NULL, name varchar(255) DEFAULT NULL, birthday date DEFAULT NULL ) ENGINE=MyISAM DEFAULT CHARSET=utf8; 二、表结构修改及代码 2.1 删除列birthday ALTER TABLE person DROP COLUMN birthday; 2.2 添加列birthday ALTER TABLE person ADD COLUMN birthday datetime; 2.3 修改列number类型为bigint ALTER TABLE person MODIFY number BIGINT NOT NULL; 2.4 修改列number为id,类型为bigint ALTER TABLE person CHANGE number id BIGINT; 2.5 添加主键 ALTER TABLE person ADD PRIMARY KEY (id); 2.6 删除主键 ALTER TABLE person DROP PRIMARY KEY; 2.7 添加唯一索引 为name这一列创建了唯一索引,索引的名字是name_unique_index.

ALTER TABLE person ADD UNIQUE name_unique_index (`name`); 2.8 添加普通索引 ALTER TABLE person ADD INDEX birthday_index (`birthday`); 2.9 删除索引 ALTER TABLE person DROP INDEX birthday_index; ALTER TABLE person DROP INDEX name_unique_index; 2.10 禁用非唯一索引 ALTER TABLE...DISABLE KEYS让MySQL停止更新MyISAM表中的非唯一索引。 ALTER TABLE person DISABLE KEYS; 2.11 激活非唯一索引 ALTER TABLE ... ENABLE KEYS重新创建丢失的索引。 ALTER TABLE person ENABLE KEYS; 2.12 把表默认的字符集和所有字符列(CHAR, VARCHAR, TEXT)改为新的字符集 ALTER TABLE person CONVERT TO CHARACTER SET utf8; 2.13 修改表某一列的编码 ALTER TABLE person CHANGE name name varchar(255) CHARACTER SET utf 8; 2.14 仅仅改变一个表的默认字符集 ALTER TABLE person DEFAULT CHARACTER SET utf8; 2.15 修改表名 RENAME TABLE person TO person_other;

关于数据库删除表的SQL语句的区别

数据库中的有关表删除的SQL关键字有drop,delete以及truncate三个。 它们的SQL语句格式如下:(假如表名为Table_name) drop table Table_name; --------------------完全删除表 delete Table_name;-----------------删除表内数据,保留表结构 truncate table Table_name;-----------------完全删除表内数据,保留表结构delete from Table_name where 条件;-------------------------------删除相关数据下面举例说明它们的区别: 首先,创建一个表Users create table Users( id int identity(1,1), name varchar(20) ) 执行;再往表内插入数据: insert into Users values('A'); insert into Users(name) values('B'); 执行;此时select*from Users; 结果如下: ①如果执行删除语句: delete Users; select*from Users; 结果是 此时再插入数据: insert into Users(name) values('CC'); select*from Users; 结果是: ②如果执行删除语句: truncate table Users; select*from Users; 结果是:

此时再插入数据: insert into Users(name) values('CC'); select*from Users; 结果是: ③如果执行删除语句: drop table Users; 则完全删除表,此时无论执行select*from Users;还是insert into Users(name) values('CC'); 都会提示表Users无效

mysql查看表结构、数据库、表、存储过程命令

mysql查看表结构、数据库、表、存储过程命令 mysql查看表结构命令,如下:desc 表名; show columns from 表名; describe 表名; show create table 表名;use information_schema select * from columns where table_name='表名';顺便记下:show databases; use 数据库名; show tables;原有一unique索引 AK_PAS_Name(PAC_Name)在表tb_webparamcounter中,执行以下sql修改索引 alter table tb_webparamcounter drop index AK_PAS_Name; alter table tb_webparamcounter add UNIQUE AK_PAS_Name(PC_ID,PAC_Name);若发现索引的逻辑不对,还需要再加一个字段进去,执行 alter table tb_webparamcounter drop index AK_PAS_Name; alter table tb_webparamcounter add UNIQUE AK_PAS_Name(PC_ID,PAC_Name,PAC_Value); 注意:这时的PC_ID,PAC_Name,PAC_Value三个字段不是

FOREIGN KEY 否则必需先drop FOREIGN KEY,再重做上一步才行查看存储过程; show procedure status;顺便提下oracle select * from v$database; select * from all_users; select * from user_tables;

SQL语句创建数据库及修改、删除数据库

使用SQL语句: CREATE DATABASE语句创建数据库 CREATE DATABASE database_name [ON [PRIMARY] [ [ ,...n] [ , [ ,...n ] ] [LOG ON { [ ,...n ] } ] ::= { ( NAME=logical_file_name , FILENAME = 'os_file_name' [ SIZE=size [KB|MB|GB|TB] ] [ MAXSIZE={max_size [KB|MB|GB|TB] | UNLIMITED } ] [FILEGROWTH=growth_increment[KB|MB|GB|TB|% ] ] ) [ ,...n ] } ::= { FILEGROUP filegroup_name [ ,...n ] } T-SQL语法说明: “[ ]”中的内容表示可以省略,省略时系统取默认值。 “{ }[ ,…n ]”表示花括号中的内容可以重复书写n次,必须用逗号隔开。“|”表示相邻前后两项只能任取一项。 一条语句可以分成多行书写,但多条语句不允许写在一行。 CREATE DATABASE 数据库名 [ ON [PRIMARY] { ( [NAME=数据文件的逻辑名称,] FILENAME=‘数据文件的物理名称’, [SIZE=数据文件的初始大小[ MB(默认) | KB | GB ] , ] [MAXSIZE={ 数据文件的最大容量[ MB | KB | GB] |UNLIMITED(不受限制) } ,] [FILEGROWTH=数据文件的增长量[ MB | KB | GB | % ] ] ) } [ , …n ]

禅道数据库表结构

专业版--后台-二次开发--数据库 查询每个人当天执行多少用例 select * from zt_testrun where lastRunner='admin' and lastRunDate>'2015-12-17 00:00:00 ' and lastRunDate<'2015-12-17 23:59:59 ' 产品表

select * from zt_product,zt_case where zt_product.id=zt_case.product and zt_https://www.360docs.net/doc/d417794407.html,='ETC项目' and lastRunDate>'2015-12-17 00:00:00' and lastRunDate<'2015-12-17 23:59:59' select * from zt_product,zt_case where zt_product.id=zt_case.product and zt_https://www.360docs.net/doc/d417794407.html,='ETC项目' and lastRunDate>'2015-12-17 00:00:00' and lastRunDate<'2015-12-17 23:59:59' select zt_https://www.360docs.net/doc/d417794407.html,, lastRunResult,count(*) as 当日执行合计from zt_product,zt_case where zt_product.id=zt_case.product and lastRunDate>'2015-12-17 00:00:00' and lastRunDate<'2015-12-17 23:59:59' group by zt_https://www.360docs.net/doc/d417794407.html,

SQL语句创建数据库及修改、删除数据库

1、使用SQL语句: CREATE DATABASE语句创建数据库 CREATE DATABASE database_name [ON [PRIMARY] [<> [ ,...n] [ , <> [ ,...n ] ] [LOG ON { <> [ ,...n ] } ] <>::= { ( NAME=logical_ , = 'os_' [ SIZE=size [KB|MB|GB|TB] ] [ MAXSIZE={max_size [KB|MB|GB|TB] | UNLIMITED } ] [[KB|MB|GB|TB|% ] ] ) [ ,...n ] } <> ::= { <> [ ,...n ] } T-SQL语法说明: ●“[ ]”中的内容表示可以省略,省略时系统取默认值。 ●“{ }[ ,…n ]”表示花括号中的内容可以重复书写n次,必须用逗号隔 开。 ●“|”表示相邻前后两项只能任取一项。 ●一条语句可以分成多行书写,但多条语句不允许写在一行。 CREATE DATABASE 数据库名 [ ON [PRIMARY] { ( [NAME=数据文件的逻辑名称,] ‘数据文件的物理名称’, [SIZE=数据文件的初始大小[ MB(默认) | KB | GB ] , ] [MAXSIZE={ 数据文件的最大容量[ MB | KB | GB] |UNLIMITED(不受限制) } ,] [数据文件的增长量[ MB | KB | GB | % ] ] )

} [ , …n ] [ 文件组名 { ( [NAME=数据文件的逻辑名称,] [‘数据文件的物理名称’, ] [SIZE=数据文件的初始大小[ MB | KB | GB ] ,] [MAXSIZE={ 数据文件的最大容量[ MB | KB | GB ] | UNLIMITED } ,] [数据文件的增长量[ MB | KB | GB | % ] ] ) } [ , …n ] ] LOG ON { ( [NAME=事务日志文件的逻辑名称,] [‘事务日志文件的物理名称’,] [SIZE=事务日志文件的初始大小[MB | KB | GB ] ,] [MAXSIZE={ 事务日志文件的最大容量[ MB | KB | GB ] | UNLIMITED } ,] [事务日志文件的增长量[ MB|KB|GB| % ]] ) } [ , …n ] ] 说明: ●ON 表示需根据后面的参数创建该数据库。 ●LOG ON 子句用于根据后面的参数创建该数据库的事务日志文件。 ●PRIMARY指定后面定义的数据文件属于主文件组PRIMARY,也可以加入 用户自己创建的文件组。 ●NAME=‘数据文件的逻辑名称’:是该文件在系统中使用的标识名称,相 当于别名。 ●‘数据文件的物理名称’:指定文件的实际名称,包括路径和后缀。 ●UNLIMITED 表示在磁盘容量允许情况下不受限制。 ●文件容量默认单位为MB字节,也可以使用KB单位。 例题一: 用T-SQL语句在C:\DATA\文件夹中创建一个教师信息数据库teacher,该数据库包含: 1、一个主数据文件逻辑名‘teacherdata1 ’, 物理名‘C:\DATA\tdata1.mdf ’, 初始容量1MB,最大容量10MB,每次增长量为15%。 2、一个辅助数据文件逻辑名‘teacherdata2 ’ 物理名‘C:\DATA\tdata2.ndf ’, 初始容量2MB,最大容量15MB,每次增长量为2MB。

【干货分享】DM数据库获取表结构和对象定义方法

【干货分享】DM数据库获取表结构和对象定义方法 很多新手在开始使用DM数据库时,都问过如何获取表结构信息的问题,今日我整理了获取表结构的各种方法,也可以从这些方法中获取其他对象的定义信息,比如表、视图、存储过程、函数、包等DDL创建语句,供大家参考。 本章介绍DM数据库获取表结构方法。 本章的测试环境: ①操作系统: Window 10 (64位) ②数据库版本:DM8 相关关键字:DM数据库对象定义语句表结构 DM数据库获取对象定义信息 下面从系统包、系统过程、数据字典、DI SQL窗口和客户端管理工具等方面介绍获取表结构、视图和其他对象定义的方法。 1 使用DBMS_META系统包 DBMS_META系统包兼容Oracle功能,其GET_DDL函数用于获取数据库对表、视图、索引、全文索引、存储过程、函数、包、序列、同义词、约束、触发器等定义的DDL语句。语法如下: FUNCTION GET_DDL( OBJECT_TYPE IN V ARCHAR(30), NAME IN V ARCHAR(128), SCHNAME IN V ARCHAR(128) DEFAULT NULL ) RETURN CLOB 参数详解 OBJECT_TYPE 对象类型。包括表、视图、物化视图、索引、全文索引、存储过程、函数、包、目录等,具体可参考《DM8系统包使用手册》。OBJECT_TYPE只能为大写。 NAME 对象名称,区分大小写。 SCHEMA 模式,默认是当前用户模式。 ①获取表定义语句 select dbms_metadata.get_ddl(OBJECT_TYPE => 'TABLE', NAME=>upper('EMPLOYEE'), SCHNAME => 'DMHR'); 结果展示如下,从结果中可查看表及相关主键、外键、唯一性约束等相关定义:

sql删除表中某一指定数据的方法

sql删除表中某一指定数据的方法 如果您需要删除SQL数据库所有表的所有字段中含有的某一指定数据,应该如何做呢?下面就将为您介绍如何使用SQL语句解决这个问题(指定删除的数据为XX),供您参考。 1 an 12345 aXX 2 XXb 56789 cXX . ... ... ... .. ... .... .... 执行后 1 an 12345 a 2 B 56789 c . ... ... ... .. ... .... .... 声明下所有表所有字段中包含XX 的—————————————————————————————— 程序代码:

DECLARE @tabName VARCHAR(40),@colName VARCHAR(40) DECLARE @sql VARCHAR(2000) DECLARE tabCursor CURSOR FOR Select name From sysobjects Where xtype = 'u' AND name <> 'dtproperties' OPEN tabCursor FETCH NEXT FROM tabCursor INTO @tabName WHILE @@fetch_status = 0 BEGIN SET @sql = 'Update ' + @tabName + ' SET ' DECLARE colCursor CURSOR FOR Select Name FROM SysColumns Where id=Object_Id(@tabName) OPEN colCursor FETCH NEXT FROM colCursor INTO @colName WHILE @@fetch_status = 0 BEGIN SET @sql = @sql + @colName + '=REPLACE(' +@colName+ ',''XX'',''''),' FETCH NEXT FROM colCursor INTO @colName

结构化查询语言SQL习题与答案 精品

第四章结构化查询语言SQL 一、选择题 1. 在SQL包含的功能中,最重要的功能是_______。 A) 数据查询B) 数据操纵C) 数据定义D) 数据控制 2. 使用SQL语言有两种方式,它们是_______。 A) 菜单式和交互式B) 嵌入式和程序式 C) 交互式和嵌入式D) 命令式和解释式 3. SQL的全部功能可以用9个动词概括,其中动词INSERT是属于下列__ ____功能。 A) 数据查询B) 数据操纵C) 数据定义D) 数据控制 4. SQL语言支持数据库的三级模式结构,其中模式对应于______。 A) 存储文件B) 视图C) 基本表D) 视图和基本表 5. 在创建数据表时,可以给字段规定NULL或NOT NULL值,NULL值的含义是______。 A) 0 B) 空格C) NULL D) 不确定 6. 在SQL的ALTER语句中,用于删除字段的子句是______。 A) ALTER B) DELETE C) DROP D) MODIFY 7. SQL中的INSERT语句可以用于______。 A) 插入一条记录B) 插入一个字段 C) 插入一个索引D) 插入一个表 8. 下列描述错误的是______。 A)用INSERT-SQL语句可以插入一条记录 B)用INSERT-SQL语句可以插入多条记录 C)使用INSERT-SQL语句可以插入记录的部分数据 D)使用INSERT-SQL语句插入记录时列名的排列顺序必须与表定义时的顺序一致 9. INSERT-SQL语句中所使用的数据不能来自于______。 A) 数组B) 变量C) 查询D) 索引 10. SQL中的UPDATE语句可以用于______。 A) 更新数据表的结构B) 更新数据表的值 C) 更新索引D) 更新查询 11. 下列描述错误的是______。 A)SQL中的UPDATE语句可以修改一条记录 B)SQL中的UPDATE语句可以修改多条记录 C)SQL中的UPDATE语句可以用子查询提供要修改的值 D)SQL中的UPDATE语句可以修改子查询的结果 12. SQL中的DELETE语句可以用于______。 A) 删除数据表的结构B) 删除数据表 C) 删除数据表的记录D) 删除数据表的字段 13. 在SELECT语句中,为了在查询结果中消去重复记录,应使用________项。 A) PERCENT B) DISTINCT C) TOP N D) WITH TIES

数据库SQL语句大全

SQL语句大全--语句功能 --数据操作 SELECT --从数据库表中检索数据行和列 INSERT --向数据库表添加新数据行 DELETE --从数据库表中删除数据行 UPDATE --更新数据库表中的数据 -数据定义 CREATE TABLE --创建一个数据库表 DROP TABLE --从数据库中删除表 ALTER TABLE --修改数据库表结构 CREATE VIEW --创建一个视图 DROP VIEW --从数据库中删除视图 CREATE INDEX --为数据库表创建一个索引 DROP INDEX --从数据库中删除索引 CREATE PROCEDURE --创建一个存储过程 DROP PROCEDURE --从数据库中删除存储过程CREATE TRIGGER --创建一个触发器 DROP TRIGGER --从数据库中删除触发器 CREATE SCHEMA --向数据库添加一个新模式DROP SCHEMA --从数据库中删除一个模式CREATE DOMAIN --创建一个数据值域 ALTER DOMAIN --改变域定义 DROP DOMAIN --从数据库中删除一个域 --数据控制 GRANT --授予用户访问权限 DENY --拒绝用户访问 REVOKE --解除用户访问权限 --事务控制 COMMIT --结束当前事务 ROLLBACK --中止当前事务 SET TRANSACTION --定义当前事务数据访问特征 --程序化SQL DECLARE --为查询设定游标 EXPLAN --为查询描述数据访问计划 OPEN --检索查询结果打开一个游标

数据库表结构设计参考

数据库表结构设计参考. )表名外部单位表(DeptOut 约束条件非空空数据类型(精度范围) /列名外部单位ID N 变长字符串(50) 主键 N 变长字符串类型 (50)

N 单位名称(255) 变长字符串 (50) 单位简称变长字符变长字符(255)单位全交换类交换、市机、直送、邮变长字符(50)N (6)单位邮变长字符 变长字符(50))单位标英整排序(4) (50)交换变长字符变长字符(50)单位领 变长字符单位电(50) 变长字符所属城(50) 变长字符(255)单位地 备(255) 变长字符 补充说300条左右,一般不做修改。初始化记录该表记录数 表外部单位子表DeptOutSu 数据类型(精度范围列非约束条 变长字符(50)外部子单IDN 外ID变长字符(50)N单位名N变长字符(255) 变长字符单位编(50) 该表记录数一般很补充说 表内部单位表DeptI

数据类型(精度范围非列约束条IDN(50)变长字符主内部单类N变长字符(50) (255)变长字符N单位名 (50)变长字符单位简 变长字符单位全(255) 工作职 排序整(4) 单位领导(50) 变长字符串 (50) 单位电话(分机)变长字符串 (255) 变长字符串备注. 条以内),一般不做修改。维护一次后很少修改补充说明该表记录数较小(100 内部单位子表(DeptInSub)表名 约束条件数据类型(精度范围)空列名/非空 (50) N 变长字符串内部子单位ID 变长字符串(50) 父ID N 外键 (255) 单位名称 N 变长字符变长字符(50)单位编领导、部变长字符(50)单位类 Int 排序 该表记录数一般很补充说 省、直辖市表Provinc表

删除数据的sql语句

truncate table --删除单个站点的相关数据【只删除数据,不删除基本信息】 --总表 DELETE FROM [In_Port_Log] where Hardware_Id='' DELETE FROM [In_Port_LogError] where Hardware_Id='' --降雨 DELETE FROM [HY_OBP_G] where STCD = '' --降雨记录表 DELETE FROM [ST_PPTN_R] where STCD = '' --降雨处理表 DELETE FROM [HY_DP_C] where STCD = '' --降雨日记录 DELETE FROM [HY_MTP_E] where STCD = '' --降雨月纪录 DELETE FROM [HY_YRP_F] where STCD = '' --降雨年纪录 DELETE FROM [Ep_YQ_JC] where STCD = '' --预警 DELETE FROM [LH_P_R] where STCD = '' --实时表 DELETE FROM [LH_P_DAY] where STCD = '' --降雨统计表:日表 DELETE FROM [LH_P_MONTH] where STCD = '' --降雨统计表:月表 --流量 DELETE FROM [ST_RIVER_R] where STCD = '' --河道处理表 DELETE FROM [HY_DQ_C] where STCD = '' --流量日记录 DELETE FROM [HY_MTQ_E] where STCD = '' --流量月纪录 DELETE FROM [HY_YRQ_F] where STCD = '' --流量年纪录 DELETE FROM [LH_Q_DAY] where STCD = '' --河道统计表:日表 DELETE FROM [LH_Q_MONTH] where STCD = '' --河道统计表:月表 DELETE FROM [LH_Q_DAY_MinMaxAvg] where STCD = '' --河道统计表:最大最小值表 --库容 DELETE FROM [ST_RSVR_R] where STCD = '' --库容处理表 DELETE FROM [HY_DV_C] where STCD = '' --库容日记录 DELETE FROM [HY_MTV_E] where STCD = '' --库容月纪录 DELETE FROM [HY_YRV_F] where STCD = '' --库容年纪录 DELETE FROM [LH_V_DAY] where STCD = '' --库容统计表:日表 DELETE FROM [LH_V_MONTH] where STCD = '' --库容统计表:月表 DELETE FROM [LH_V_DAY_MinMaxAvg] where STCD = '' --库容统计表:最大最小值表 --水位 DELETE FROM [HY_DZ_C] where STCD = '' --水位日记录 DELETE FROM [HY_MTZ_E] where STCD = '' --水位月纪录 DELETE FROM [HY_YRZ_F] where STCD = '' --水位年纪录 DELETE FROM [HY_OBZ_G] where STCD = '' --水位记录表 DELETE FROM [LH_Z_DAY_JD] where STCD = '' --水位统计表:日表 DELETE FROM [LH_Z_MONTH_JD] where STCD = '' --水位统计表:月表 DELETE FROM [LH_Z_DAY_JD_MinMaxAvg] where STCD = '' --水位统计表:最大最小值表 DELETE FROM [LH_Z_DAY_XD] where STCD = '' --水位统计表:日表 DELETE FROM [LH_Z_MONTH_XD] where STCD = '' --水位统计表:月表

相关文档
最新文档