欢迎来到天天文库
浏览记录
ID:36316087
大小:746.00 KB
页数:45页
时间:2019-05-09
《mysql学习教程第2章》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、网络数据库技术应用第二章数据库和表2.1命令方式创建数据库和表安装完后,系统自动创建information_schema数据库和mysql数据库,如果删除这些数据库将MySQL将无法正常工作。可用showdatabases来查看已有的数据库对数据库的操作主要有三种:创建使用删除2.1.1创建数据库使用CREATEDATABASE或CREATESCHEMA命令可以创建数据库。语法格式:CREATE{DATABASE
2、SCHEMA}[IFNOTEXISTS]db_name[create_specification[,cre
3、ate_specification]...]其中create_specification:[DEFAULT]CHARACTERSETcharset_name
4、[DEFAULT]COLLATEcollation_name2.1.1创建数据库说明:●db_name:数据库名。在文件系统中,MySQL的数据存储区将以目录方式表示MySQL数据库。因此,命令中的数据库名字必须符合操作系统文件夹命名规则。值得注意的是:在MySQL中是不区分大小写的。●IFNOTEXISTS:在建数据库前进行判断,只有该数据库目前尚不存在时才执行
5、CREATEDATABASE操作。用此选项可以避免出现数据库已经存在而再新建的错误。2.1.1创建数据库●DEFAULT:指定默认值。●CHARACTERSET:指定数据库字符集,charset_name为字符集名称。●COLLATE:指定字符集的校对规则,collation_name为校对规则名称。【例1】创建一个名为test1的数据库。MySQL不允许两个数据库使用相同的名字,使用IFNOTEXISTS从句可以不显示错误信息。创建了数据库之后使用USE命令可指定当前数据库。语法格式:USEdb_name;说明:这个
6、语句也可以用来从一个数据库“跳转”到另一个数据库,在用CREATEDATABASE语句创建了数据库之后,该数据库不会自动成为当前数据库,需要用这条USE语句来指定。注意:在MySQL中,每一条SQL语句都以“;”作为结束标志。修改数据库数据库创建后,如果需要修改数据库的参数,可以使用ALTERDATABASE命令。语法格式:ALTER{DATABASE
7、SCHEMA}[db_name]alter_specification[,alter_specification]...说明:ALTERDATABASE用于更改数据库的
8、全局特性,这些特性储存在数据库目录中的db.opt文件中。用户必须有对数据库进行修改的权限,才可以使用ALTERDATABASE。修改数据库的选项与创建数据库相同,功能不再重复说明。如果语句中数据库名称忽略,则修改当前(默认)数据库。【例2】修改数据库mydata(假设mydata已经创建)的默认字符集和校对规则。ALTERDATABASEmydataDEFAULTCHARACTERSETgb2312DEFAULTCOLLATEgb2312_chinese_ci;删除数据库已经创建的数据库需要删除,使用DROPDATA
9、BASE命令。语法格式:DROPDATABASE[IFEXISTS]db_name其中,db_name是要删除的数据库名。可以使用IFEXISTS子句以避免删除不存在的数据库时出现的MySQL错误信息。2.1.2表操作表的操作主要有三种:创建表结构修改表结构修改表名复制表删除表表结构和表表结构只是表的基本结构,不包括表中数据;表指表结构和表中数据。创建表结构创建表使用CREATETABLE命令。语法格式:CREATE[TEMPORARY]TABLE[IFNOTEXISTS]tbl_name[([column_defin
10、ition],...
11、[index_definition])][table_option][select_statement];说明:●TEMPORARY:该关键字表示用CREATE命令新建的表为临时表。不加该关键字创建的表通常称为持久表,在数据库中持久表一旦创建将一直存在,多个用户或者多个应用程序可以同时使用持久表。有时候需要临时存放数据,例如,临时存储复杂的SELECT语句的结果。此后,可能要重复地使用这个结果,但这个结果又不需要永久保存。这时,可以使用临时表。用户可以像操作持久表一样操作临时表。只不过临时表的生命
12、周期较短,而且只能对创建它的用户可见,当断开与该数据库的连接时,MySQL会自动删除它们。●IFNOTEXISTS:在建表前加上一个判断,只有该表目前尚不存在时才执行CREATETABLE操作。用此选项可以避免出现表已经存在无法再新建的错误。●table_name:要创建的表的表名。该表名必须符合标志符规则,如果有MySQL保留字
此文档下载收益归作者所有