SQL更新数据库数据的日期的命令的修数据修改命令

跟我学sql:(五)创建和修改表格_数据库教程
再次欢迎您来到SQL(结构化查询语言)基础系列教程。本文将介绍数据库定义语言(DDL)用于创建数据库和表格以及修改表格结果的指令。&
当你使用这些指令时一定要小心——它很容易删去你的数据库中的主要结构令您丢失数据。所以,在您开始修改数据库之前,您需要知道数据库是什么。
——————————————————————————–
数据库之间的差异&
本文中的样品查询系统遵循SQL92&ISO标准。并不是所有的数据库都遵循该标准,有些数据库做了改进,这会产生不可预料的结果。如果你不能确定你的数据库是否支持该标准,请参考相应的文档。
——————————————————————————–
创建数据库
为了创建表格,你首先需要需要创建一个可以容纳表格的数据库。SQL用于创建数据库的基本语句是:
CREATE&DATABASE&
你的数据库用户必须有建立数据库的适当权限。如果与你有关的用户不能发出用于创建新数据库的命令,要求数据库管理员为你建立数据库,你也作为管理员登录然后建立数据库并设置权限。
举个例子,用CREATE指令为一个应用程序建立一个数据库用于显示一个目录:
CREATE&DATABASE&C
这给你一个用于在查询时与其它表格区分的表格名字。下一步是创建用于输入它的表格。
如你所知,表格是有若干个栏目所组成。当创建表格时,你可以定义栏目并分配字段属性。表格建立后,可以用ALTER表格指令来修改它,我们稍后将提到这一点。
你可以用下面这条指令来创建数据库,命令行的参数为表格名字、栏目名字,还有每一栏的数据类型。
CREATE&TABLE&table_name
(column1&data_type,&column2&data_type,&column3&data_type);
不同的数据库提供商的标准差别很大。你的帮助文档中应该有一段详细说明如何使用每一种数据、接受何种参数。为了通用,我在表A中列出了一些常用的数据类型。
&它包含了一个固定长度的字符串,其值常常是字符串长度。
&Varchar(128)
&它包含了一个长度不大于指定值的长度可变的字符串。
&这是一个不大于指定值得整数,也做Number或Integer。
&Decimal(12,2)
&这是一个总位数和小数点后位数不大于指定值得小数,也被称为Numeric或Number。
&用于存储二进制对象,在数据库中它一般不可分解和显示,也称为Raw或Blob。
&用来只是真或假,也成为Bit或Byte。
通用数据类型
在本例中,我们建立了一个存放库存商品信息的表格。所用到的栏目和数据类型如表B所示:
栏目名称:
&prod_color
&prod_descr
&prod_size
数据类型:
&Varchar(20)
&Varchar(255)
&Decimal(8,2)
在本例中,我使用了三种基本数据类型;然而,在实际使用时,根据数据库支持的内容,我可能还用用上tinyint、文本和mediumtext数据类型。
发出如下指令来建立表格:
CREATE&TABLE&Products
(prod_id&INT(16),&prod_color&VARCHAR(20),&prod_descr&VARCHAR(255),&prod_size&DECIMAL(8,2));
如果这些指令顺利完成,你就可以在表格中正常地插入信息。你可以参到文章SQL基础一:数据查询”得到详细说明。
除了数据类型,你还可以在创建表格时定义自动增量字段(auto-incremented&field)、关键字、索引和特殊数值限制。在表格定义时,这些参数与数据类型一同传递。如果在创建表格Product时定义具有特殊数值限制的自动增量prod_id,命令如下:
CREATE&TABLE&Products
(prod_id&INT(16)AUTO_INCREMENT,&prod_color&VARCHAR(20),&prod_descr&VARCHAR(255),&prod_size&DECIMAL(8,2),&UNIQUE&(`prod_id`));
如果把prod_id做为索引字段定义,可以用CREATE&INDEX:
CREATE&INDEX&ProdIndex&ON&Product&(prod_id);
这里有必要重申:数据库提供商在关键字的处理上有所不同。所以,具体情况请参考你的数据库提供商的文档。
——————————————————————————–
关于索引的更多内容:
索引是一个比较深的课题。除了介绍有关关键字和索引的理论,Builder.com的供稿人Eric&Roland写了几篇很好的文章,你可以通过它们来学到更多的相关知识。
当你开始对表格进行操作时,你也许觉得有必要修改表格的结构、字段类型等等。在前面,我强烈建议你避免在生产环境(production&environment)这么做。因为有些操作,如添加、删除和修改字段可能会删除或破坏相关字段中的数据。
好,现在让我们看看如何修改表格。首先,在表格Product中加入一栏。你可以指定该栏插入的相对其它栏的位置,也可以让它插到表格末端(默认):
ALTER&TABLE&Product&ADD&prod_name&VARCHAR(20)&AFTER&prod_
用类似的语句删除一个栏目:
ALTER&TABLE&Product&DROP&prod_
最后,更改一个栏目的数据类型:
ALTER&TABLE&Product&CHANGE&prod_color&prod_color_id&INT(20);
现在,你的表格如表C所示:
栏目名称:
&prod_name
&prod_color_id
&prod_descr
数据类型:
&Varchar(20)
&Varchar(255))
注意,有些数据库不支持关键字DROP。另外,如果你改变现有的某一栏的数据类型,大多数数据库会试图转化该栏目现有数据的数据类型。然而,如果是转为一个不支持的数据类型,数据就有可能丢失。举例来说,如果把一个类型为Varchar的包含人名字的字段改为Int类型,转换的结果可能是整型的默认值。
删除表格和数据库
在删除表格和数据库之前,你需要确保丢失这些数据不会造成恶果。如果你删除数据库,库中的所有表格和内容都会被清除。如果你删除一个表格,表格中的所有内容都会丢失,但是库中的其它表格没有影响。
在删除表格或整个栏目之前,你必须清楚数据库的结构。如果你进入一个已经存在的数据库并错误删除了某个元素,可能会影响到促发条件(?trigger)、存储过程和视图。有些数据库支持用关键字RESTRICT和CASCADE去预防由于删除表格带来的损失。RESTRICT一般按默认设置,预防丢失表格,而CASCADE用于删除与该表格有关的实体。
现在上面建立的表格Product是可以被删除的,我们开始删除它:
DROP&TABLE&P
现在删除数据库:
DROP&DATABASE&C
大多数数据库软件提供商支持DROP&DATABASE命令,尽管它是在SQL99标准中被定义而不是SQL92。
部分数据库提供了FLUSH命令,该命令可以让你删除表格中的内容但又可以保持表格的结果,:
FLUSH&TABLE&P
如你所见,删除数据库中的主要结构并丢失所存的所有数据的容易程度令人难以想象,所以,一定要小心使用这些命令,而当你不清楚数据库中的内容时,就不要使用这些命令。&
数据库管理
在前一篇文章中,你学会了如何在一个或多个表格中查找数据。现在,你学会了如何把你操作数据库结构。你学会了创建、修改并销毁表格和数据。这些都是设计数据库驱动的应用程序的必须用的操作。SQL数据库的修数据修改命令_百度知道
SQL数据库的修数据修改命令
你好,我刚才问的问题,可能是我描述的有点简单,麻烦你再帮我编一个,我想要得到下面这种结果...
你好,我刚才问的问题,可能是我描述的有点简单,麻烦你再帮我编一个,我想要得到下面这种结果
答题抽奖
首次认真答题后
即可获得3次抽奖机会,100%中奖。
Mr_sun_sir
来自电脑网络类芝麻团
Mr_sun_sir
采纳数:145
获赞数:14
参与团队:
update 表 set name=replace(name,'','')
where name like '%'
来自:求助得到的回答
江西新华天枰
江西新华天枰
采纳数:158
获赞数:10
为你推荐:
其他类似问题
您可能关注的内容
个人、企业类
违法有害信息,请在下方选择后提交
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。10:50 提问
数据库状态变为可疑,修复后数据库页已标记为 RestorePending
数据库版本为sqlserver2008
早上公司断电,服务器启动后有一个数据库编程可疑状态无法查询,在网上搜了下,执行了以下命令
1、修改数据库为紧急模式
ALTER DATABASE jd13dafa SET EMERGENCY
2、使数据库变为单用户模式
ALTER DATABASE jd13dafa SET SINGLE_USER
3、修复数据库日志重新生成,此命令检查的分配,结构,逻辑完整性和所有数据库中的对象错误。当您指定“REPAIR_ALLOW_DATA_LOSS”作为DBCC CHECKDB命令参数,该程序将检查和修复报告的错误。但是,这些修复可能会导致一些数据丢失。
DBCC CheckDB (jd13dafa , REPAIR_ALLOW_DATA_LOSS)
4、使数据库变回为多用户模式
ALTER DATABASE jd13dafa SET MULTI_USER
在执行CheckDB时报错,然后数据库可以查询了,但是发现很多表和视图查询时报错“数据库页已标记为 RestorePending,可能表明磁盘已损坏。要从此状态恢复,请执行还原操作”
按赞数排序
最后把还能用的表导了出来,重新创建的数据库,唉,就这样吧
虽然我们用的oracle。但应该是一样的原因吧。
已经在执行下面的语句了,当前还有没有别的办法
USE MASTER
SP_CONFIGURE 'ALLOW UPDATES',1 RECONFIGURE WITH OVERRIDE
ALTER DATABASE A_LinTaoOA SET EMERGENCY
sp_dboption 'A_LinTaoOA', 'single user', 'true'
DBCC CHECKDB('A_LinTaoOA','REPAIR_ALLOW_DATA_LOSS')
ALTER DATABASE A_LinTaoOA SET ONLINE
sp_configure 'allow updates', 0 reconfigure with override
sp_dboption 'A_LinTaoOA', 'single user', 'false'
之前也遇到过类似问题
上面给出的三个其实是一个方法,并且不好用呀
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐试了好长时间
alter table 表名 modify column 字段名 类型;
数据库中user表 name字段是varchar(30)
alter table user modify column name varchar(50) ;
这样就修改了
浏览 112106
浏览: 341113 次
来自: 北京
楼主好人!,网上好多都不能用!
hibernate3也可以采用OpenSessionInVie ...
试试,之前下载了lordhong的,根本就无法运行。
(window.slotbydup=window.slotbydup || []).push({
id: '4773203',
container: s,
size: '200,200',
display: 'inlay-fix'}

我要回帖

更多关于 数据库导入数据的命令 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信