`

用SQL语句添加删除修改字段及一些表与字段的基本操作

阅读更多

  1. 用SQL语句添加删除修改字段   
  2.   
  3. 1.增加字段  
  4.      alter table docdsp    add dspcode char(200)  
  5. 2.删除字段  
  6.      ALTER TABLE table_NAME DROP COLUMN column_NAME  
  7. 3.修改字段类型  
  8.      ALTER TABLE table_name    ALTER COLUMN column_name new_data_type  
  9. 4.sp_rename 改名  
  10.   更改当前数据库中用户创建对象(如表、列或用户定义数据类型)的名称。  
  11.     语法  
  12.     sp_rename [ @objname = ] 'object_name' ,  
  13.         [ @newname = ] 'new_name'  
  14.         [ , [ @objtype = ] 'object_type' ]  
  15.         如:EXEC sp_rename    'newname','PartStock'  
  16. 5.sp_help 显示表的一些基本情况  
  17.      sp_help 'object_name'     如:EXEC sp_help    'PartStock'  
  18. 6.判断某一表PartStock中字段PartVelocity是否存在  
  19. if     exists     (select     *     from     syscolumns     where     id=object_id('PartStock')     and     name='PartVelocity')    
  20. print     'PartVelocity exists'   
  21. else print 'PartVelocity not exists'  
  22. 另法:  
  23. 判断表的存在性:  
  24.     select count(*) from sysobjects where type='U' and name='你的表名'  
  25. 判断字段的存在性:  
  26.     select count(*) from syscolumns  
  27.     where id     = (select id from sysobjects where type='U' and name='你的表名')  
  28.     and     name = '你要判断的字段名'  
  29.     
  30. 一个小例子  
  31. --假设要处理的表名为: tb  
  32. --判断要添加列的表中是否有主键  
  33. if exists(select 1 from sysobjects where parent_obj=object_id('tb') and xtype='PK')  
  34. begin  
  35. print '表中已经有主键,列只能做为普通列添加'  
  36. --添加int类型的列,默认值为0  
  37. alter table tb add 列名 int default 0    
  38. end  
  39. else  
  40. begin  
  41. print '表中无主键,添加主键列'  
  42. --添加int类型的列,默认值为0  
  43. alter table tb add 列名 int primary key default 0    
  44. end  
  45.   
  46. 7.随机读取若干条记录  
  47.       Access语法:SELECT top 10 * From 表名 ORDER BY Rnd(id)  
  48.       Sql server:select top n * from 表名 order by newid()  
  49.       mysql select * From 表名 Order By rand() Limit n  
  50. 8.说明:日程安排提前五分钟提醒  
  51.       SQL: select * from 日程安排 where datediff(minute,f开始时间,getdate())>5  
  52.   
  53. 9.前10条记录  
  54.       select top 10 * form table1 where 范围  
  55.   
  56. 10.包括所有在 TableA 中但不在 TableB和TableC 中的行并消除所有重复行而派生出一个结果表  
  57.       (select a from tableA ) except (select a from tableB) except (select a from tableC)  
  58.   
  59. 11.说明:随机取出10条数据  
  60.       select top 10 * from tablename order by newid()  
  61.   
  62. 12.列出数据库里所有的表名  
  63.       select name from sysobjects where type=U   
  64. 13.列出表里的所有的字段名  
  65.       select name from syscolumns where id=object_id(TableName)  
  66. 14.说明:列示type、vender、pcs字段,以type字段排列,case可以方便地实现多重选择,类似select 中的case。  
  67.       select type,sum(case vender when A then pcs else 0 end),sum(case vender when C then pcs else 0 end),sum(case vender when B then pcs else 0 end) FROM tablename group by type  
  68. 15.说明:初始化表table1  
  69.       TRUNCATE TABLE table1  
  70. 16.说明:几个高级查询运算词  
  71.   A: UNION 运算符   
  72.   UNION 运算符通过组合其他两个结果表(例如 TABLE1 和 TABLE2)并消去表中任何重复行而派生出一个结果表。当 ALL 随 UNION 一起使用时(即 UNION ALL),不消除重复行。两种情况下,派生表的每一行不是来自 TABLE1 就是来自 TABLE2。  
  73.   
  74.   B: EXCEPT 运算符   
  75.   EXCEPT 运算符通过包括所有在 TABLE1 中但不在 TABLE2 中的行并消除所有重复行而派生出一个结果表。当 ALL 随 EXCEPT 一起使用时 (EXCEPT ALL),不消除重复行。  
  76.   
  77.   C: INTERSECT 运算符  
  78.   INTERSECT 运算符通过只包括 TABLE1 和 TABLE2 中都有的行并消除所有重复行而派生出一个结果表。当 ALL 随 INTERSECT 一起使用时 (INTERSECT ALL),不消除重复行。  
  79.   注:使用运算词的几个查询结果行必须是一致的。  
  80.   
  81.   
  82. 17.说明:在线视图查询(表名1:a )  
  83.       select * from (SELECT a,b,c FROM a) T where t.a > 1;  
  84.   
  85. 18.说明:between的用法,between限制查询数据范围时包括了边界值,not between不包括  
  86.       select * from table1 where time between time1 and time2  
  87.       select a,b,c, from table1 where a not between 数值1 and 数值2  
  88.   
  89. 19.说明:in 的使用方法  
  90.       select * from table1 where a [not] in (‘值1’,’值2’,’值4’,’值6’)  
  91.   
  92. 20.说明:两张关联表,删除主表中已经在副表中没有的信息   
  93.       delete from table1 where not exists ( select * from table2 where table1.field1=table2.field1 )  
  94. 21. 说明:复制表(只复制结构,源表名:a 新表名:b) (Access可用)  
  95.   法一:select * into b from a where 1<>1  
  96.   法二:select top 0 * into b from a  
  97.   
  98. 22.说明:拷贝表(拷贝数据,源表名:a 目标表名:b) (Access可用)  
  99.       insert into b(a, b, c) select d,e,f from b;  
  100.   
  101. 23.说明:跨数据库之间表的拷贝(具体数据使用绝对路径) (Access可用)  
  102.       insert into b(a, b, c) select d,e,f from b in ‘具体数据库’ where 条件  
  103.   例子:..from b in "&Server.MapPath(".")&"\data.mdb" &" where..  
  104. 24.创建数据库  
  105.       CREATE DATABASE database-name  
  106.   
  107. 25.说明:删除数据库  
  108.       drop database dbname  
  109. 26.说明:备份sql server  
  110.   --- 创建 备份数据的 device  
  111.       USE master  
  112.       EXEC sp_addumpdevice disk, testBack, c:\mssql7backup\MyNwind_1.dat  
  113.   
  114.   --- 开始 备份  
  115.       BACKUP DATABASE pubs TO testBack  
  116.   
  117. 27.说明:创建新表  
  118.       create table tabname(col1 type1 [not null] [primary key],col2 type2 [not null],..)  
  119.   根据已有的表创建新表:   
  120.       A:create table tab_new like tab_old (使用旧表创建新表)  
  121.       B:create table tab_new as select col1,col2… from tab_old definition only  
  122.   
  123. 28.说明:  
  124.   删除新表:drop table tabname  
  125.   
  126. 29.说明:  
  127.   增加一个列:Alter table tabname add column col type  
  128.   注:列增加后将不能删除。DB2中列加上后数据类型也不能改变,唯一能改变的是增加varchar类型的长度。  
  129.   
  130. 30.说明:  
  131.   添加主键:Alter table tabname add primary key(col)   
  132.   说明:  
  133.   删除主键:Alter table tabname drop primary key(col)  
  134.   
  135. 31.说明:  
  136.   创建索引:create [unique] index idxname on tabname(col….)   
  137.   删除索引:drop index idxname  
  138.   注:索引是不可更改的,想更改必须删除重新建。  
  139.   
  140. 32.说明:  
  141.   创建视图:create view viewname as select statement  
  142.   删除视图:drop view viewname  
  143.   
  144. 33.说明:几个简单的基本的sql语句  
  145.   选择:select * from table1 where 范围  
  146.   插入:insert into table1(field1,field2) values(value1,value2)  
  147.   删除:delete from table1 where 范围  
  148.   更新:update table1 set field1=value1 where 范围  
  149.   查找:select * from table1 where field1 like ’%value1%’ ---like的语法很精妙,查资料!  
  150.   排序:select * from table1 order by field1,field2 [desc]  
  151.   总数:select count * as totalcount from table1  
  152.   求和:select sum(field1) as sumvalue from table1  
  153.   平均:select avg(field1) as avgvalue from table1  
  154.   最大:select max(field1) as maxvalue from table1  
  155.   最小:select min(field1) as minvalue from table1  

分享到:
评论

相关推荐

    SQL语句增加字段、修改字段、修改类型、修改默认值

    以上就是关于如何使用SQL语句增加字段、修改字段、修改类型、修改默认值以及添加/删除约束的一些基本操作。这些操作是数据库维护工作中非常常见的一部分,掌握它们可以帮助我们更灵活地管理数据库结构,以适应不断...

    用SQL语句添加删除修改字段、一些表与字段的基本操作、数据库备份等

    用SQL语句添加删除修改字段 1.增加字段 alter table docdsp add dspcode char(200) 2.删除字段 ALTER TABLE table_NAME DROP COLUMN column_NAME 3.修改字段类型 ALTER TABLE table_name ALTER COLUMN column_name ...

    access数据库用sql语句添加字段,修改字段,删除字段

    以下是针对 Access 数据库使用 SQL 语句进行字段操作的详细解释: 1. **添加字段**: 当你需要向已存在的表中添加新字段时,可以使用 `ALTER TABLE` 语句。例如,假设有一个名为 `AAA` 的表,我们想要添加一个新的...

    使用SQL语句增加字段

    当我们需要对现有的数据库表结构进行修改,比如添加新的字段时,可以使用SQL语句来完成。以下将详细介绍如何使用SQL语句在Access数据库中增加字段。 在Access中,数据库文件的扩展名通常为`.mdb`,这表明你提供的`...

    用SQL语句表与字段的基本操作、数据库备份等

    在本篇内容中,我们将深入探讨如何使用SQL进行表和字段的基本操作,包括添加、删除和修改字段,以及数据库对象的重命名和查询。这些操作对于数据库管理、数据分析以及开发人员来说至关重要。 1. **添加字段**: 要...

    SQL语句总结,包括增删改查,建库,表,修改表结构,增删约束与字段等

    SQL 语句总结,包括增删改查,建库,表,修改表结构,增删约束与字段等 SQL 语句是关系数据库管理系统的核心组成部分,用于管理和操作数据库。下面是 SQL 语句的总结,包括创建数据库、创建表、修改表结构、增删...

    常用的sql语句。新建表、删除表、插入数据、删除数据、更新数据、新增字段、删除字段、修改字段、新建约束、删除约束,等等常用语句

    以上介绍了常用的SQL语句,这些命令是进行数据库管理的基本工具,无论是创建新表还是对已有数据进行操作都非常重要。理解并熟练掌握这些SQL语句对于从事数据库开发和维护工作的人来说至关重要。此外,不同的数据库...

    C#根据DataTable动态生成SQL语句,解决数据库字段变更后代码也需要随之修改的问题

    彻底告别手动写SQL语句,一劳永逸解决数据库字段变更后代码也需要随之修改的问题。 根据DataTable中数据行记录改变...如果一个表中字段上百个,在只改了其中两三个字段时,则生成的SQL语句就只会含有这修改内容的字段

    SQL技巧之删除字段及约束

    当涉及到表结构的修改时,“删除字段”与“删除约束”是两项重要的操作。 - **删除字段**:指的是从现有的数据表中移除一个或多个字段的过程。此操作通常用于不再需要某个字段的情况下。 - **删除约束**:则是指...

    sql语句操作access数据库,表,字段

    SQL 语句操作 Access 数据库、表、字段 Access 数据库是 Microsoft 提供的一种关系数据库管理系统,...使用 SQL 语句可以操作 Access 数据库、表和字段,包括创建数据库、创建表、修改表结构和字段结构、删除表等。

    Oracle添加字段的sql语句源码下载

    Oracle添加字段的完整语句,oracle 添加字段时判断字段是否已经存在,sqlserver判断字段是否存在并添加

    达梦数据库建表操作SQL语句大全.pdf

    向表中添加数据可以使用INSERT语句,其基本格式为 `INSERT INTO [表名] (字段1, 字段2) VALUES (值1, 值2)`。在插入数据时,需要明确指出要插入数据的字段名以及对应的数据值。 4. 删除数据(DELETE FROM): 删除...

    数据库建表增加或删除字段

    在Oracle数据库管理中,对表结构进行修改是常见的需求之一,比如添加新的字段或删除不再使用的字段等。本文将基于给定的文件信息——“数据库建表增加或删除字段”来详细阐述如何通过SQL语句实现这些操作。 ### 一...

    数据库建表操作SQL语句大全

    ### 数据库建表操作SQL语句...以上就是关于数据库建表操作的SQL语句大全及解释,涵盖了从创建表、数据的增删改查到表的维护等多个方面。希望这些内容能够帮助新手快速上手SQL语句,并熟练掌握数据库管理的基础技能。

    SQL查询字段被包含语句

    如果要添加新的名字,只需更新传入的参数即可,无需改动SQL语句,从而简化了代码维护。 需要注意的是,虽然`CHARINDEX`在处理多个关键词时提供了便利,但它在大数据量查询时可能不如其他优化过的查询方法(如全文...

    经典的SQL查询语句,将内容作为字段查询

    4. 图片和SQL语句:虽然SQL主要用于处理文本数据,但在实际应用中,我们可能需要与图像数据交互。这通常涉及到BLOB(Binary Large Object)类型的字段,用于存储非文本数据。查询这类数据时,可能需要用到`SELECT ...

    创建与删除SQL约束或字段约束SQL约束控制

    如果需要清空数据库中的所有表数据,但保留表结构,可以使用以下SQL语句: ```sql SELECT 'TRUNCATE TABLE ' + name FROM sys.tables ``` 这条语句同样会生成一系列`TRUNCATE TABLE`命令,每个命令对应一个表。`...

Global site tag (gtag.js) - Google Analytics