只想知道 发表于 2015-2-16 00:23:20

发布MYSQL利用指南(下)

能够以较低的成本向客户提供IT所有权,当节约成本成为客户最高优先级时,解决方案提供商可以向更多的客户同时提供服务。虽然有许多来自RDBMS固有的局限性。在上篇咱们讲了登录、增添用户、暗码更改等成绩。下篇咱们来看看MySQL中有关数据库方面的操作。注重:你必需起首登录到MYSQL中,以下操作都是在MYSQL的提醒符下停止的,并且每一个号令以分号停止。

1、操作技能
   1、假如你打号令时,回车后发明健忘加分号,你不必重打一遍号令,只需打个分号回车就能够了。也就是说你可以把一个完全的号令分红几行来打,完后用分号作停止标记就OK。
   2、你可使用光标高低键调出之前的号令。但之前我用过的一个MYSQL旧版本不撑持。我如今用的是mysql-3.23.27-beta-win。

2、显示号令
   1、显示数据库列表。
      show databases;
   刚入手下手时才两个数据库:mysql和test。mysql库很主要它外面有MYSQL的体系信息,咱们改暗码和新增用户,实践上就是用这个库停止操作。
   2、显示库中的数据表:
      use mysql;   //翻开库,学过FOXBASE的必定不会生疏吧
      show tables;
   3、显示数据表的布局:
      describe 表名;
   4、建库:
      create database 库名;
   5、建表:
      use 库名;
      create table 表名 (字段设定列表);
   6、删库和删表:
      drop database库名;
      drop table表名;
   7、将表中纪录清空:
      delete from 表名;
   8、显示表中的纪录:
      select * from 表名;

3、一个建库和建表和拔出数据的实例
drop database if exists school; //假如存在SCHOOL则删除
create database school;   //创立库SCHOOL
use school;      //翻开库SCHOOL
create table teacher   //创立表TEACHER
(
id int(3) auto_increment not null PRimary key,
name char(10) not null,
address varchar(50) default '深圳',
year date
);            //建表停止
//以下为拔出字段   
insert into teacher values('','glchengang','深圳一中','1976-10-10');
insert into teacher values('','jack','深圳一中','1975-12-23');

   注:在建表中
(1)将ID设为长度为3的数字字段:int(3)并让它每一个纪录主动加一:auto_increment其实不能为空:not null并且让他成为主字段primary key
(2)将NAME设为长度为10的字符字段
(3)将ADDRESS设为长度50的字符字段,并且缺省值为深圳。varchar和char有甚么区分呢,只要等今后的文章再说了。 (4)将YEAR设为日期字段。
   假如你在mysql提醒符键入下面的号令也能够,但不便利调试。你可以将以上号令原样写入一个文本文件中假定为school.sql,然后复制到c:下,并在DOS形态进入目次mysqlbin,然后键入以下号令:
    mysql -uroot -p暗码 < c:school.sql
假如胜利,空出一行无任何显示;若有毛病,会有提醒。(以上号令已调试,你只需将//的正文去失落便可利用)。


4、将文本数据转到数据库中
1、文本数据应合适的格局:字段数据之间用tab键离隔,null值用n来取代.
例:
3 rose 深圳二中 1976-10-10
4 mike 深圳一中 1975-12-23
2、数据传入号令 load data local infile "文件名" into table 表名;
注重:你最好将文件复制到mysqlbin目次下,而且要先用use号令打表地点的库。


5、备份数据库:(号令在DOS的mysqlbin目次下履行)
   mysqldump --opt school>school.bbb
正文:将数据库school备份到school.bbb文件,school.bbb是一个文本文件,文件名任取,翻开看看你会有新发明。

   跋文:其实MYSQL的对数据库的操作与其它的SQL类数据库迥然不同,您最好找本将SQL的书看看。我在这里只引见一些根基的,其实我也就只懂这些了,呵呵。最好的MYSQL教程仍是“晏子“译的“MYSQL中文参考手册“不但收费每一个相干网站都有下载,并且它是最威望的。惋惜不是象"php4中文手册"那样是chm的格局,在查找函数号令的时分不太便利。

【本文版权归作者与奥索网配合具有,如需转载,请注明作者及出处】   
DBaaS和其他云服务之间的区别是:DBaaS专注于提供类似关系数据库管理系统RDBMS(比如SQL Server、MySQL和Oracle)的数据库功能。事实上,RDBMS已被证明是一种适合于在各种情况下管理结构化数据的有效工具。

精灵巫婆 发表于 2015-2-16 00:49:29

不过话说回来了,绝大多数的性能优化准则与对sqlserver存储的结构理解息息相关

老尸 发表于 2015-3-4 19:53:48

varchar(max)\\\\nvarchar(max)类型的引入大大的提高了编程的效率,可以使用字符串函数对CLOB类型进行操作,这是一个亮点。

小女巫 发表于 2015-3-6 16:48:31

一个是把SQL语句写到客户端,可以使用DataSet进行加工;

不帅 发表于 2015-3-13 04:15:58

不好!如果出了错;不好调试;不好处理!其实web开发将代码分为3层:web层;业务逻辑层和数据访问层;一般对数据库的操作都在数据访问层来做;这样便于调试和维护!而且将来如果是换了数据库的话;你只需要改数据层的代码;其他层的基本可以不变!要是你在jsp中直接调用sql数据库;那么如果换了数据库呢?岂不都要改?如果报了异常呢?怎么做异常处理?

乐观 发表于 2015-3-13 10:06:29

多加的系统视图和实时系统信息这些东西对DBA挑优非常有帮助,但是感觉粒度还是不太细。

第二个灵魂 发表于 2015-3-20 19:06:05

语句级快照和事务级快照终于为SQLServer的并发性能带来了突破。个人感觉语句级快照大家应该应用。事务级快照,如果是高并发系统还要慎用。如果一个用户总是被提示修改不成功要求重试时,会杀人的!

再现理想 发表于 2015-3-26 05:56:29

每天坚持做不一样的是,认真做笔录,定时复习。一个月你就可以有一定的收获。当然如果你想在sql方面有一定的造诣,你少不了需要看很多很多的书籍了。

活着的死人 发表于 2015-4-1 00:08:24

同样会为索引视图等应用带来麻烦。看看行级和事务级的快照数据放在tempdb中,就能感觉到目前架构的尴尬。

仓酷云 发表于 2015-4-5 16:24:38

如果是将来做数据库的开发设计,就应该详细学习T-SQL的各种细节,包括T-SQL的程序设计、存储过程、触发器以及具体使用某个开发语言来访问数据库。

变相怪杰 发表于 2015-4-8 14:21:54

而SQLServer如果能像Oracle一样可以为登陆分配如:5%的cpu,10%的内存。就可以解决这个漏洞。

飘飘悠悠 发表于 2015-4-11 18:39:43

不好!如果出了错;不好调试;不好处理!其实web开发将代码分为3层:web层;业务逻辑层和数据访问层;一般对数据库的操作都在数据访问层来做;这样便于调试和维护!而且将来如果是换了数据库的话;你只需要改数据层的代码;其他层的基本可以不变!要是你在jsp中直接调用sql数据库;那么如果换了数据库呢?岂不都要改?如果报了异常呢?怎么做异常处理?

简单生活 发表于 2015-4-13 00:32:00

sqlserver的痛苦之处在于有用文档的匮乏,很多只是表明的东西

蒙在股里 发表于 2015-4-21 13:22:17

sqlserver的痛苦之处在于有用文档的匮乏,很多只是表明的东西

小妖女 发表于 2015-4-22 06:28:53

可以动态传入参数,省却了动态SQL的拼写。

小魔女 发表于 2015-4-23 10:35:05

入门没那么困难,精通没那么容易

因胸联盟 发表于 2015-4-26 14:08:28

每天坚持做不一样的是,认真做笔录,定时复习。一个月你就可以有一定的收获。当然如果你想在sql方面有一定的造诣,你少不了需要看很多很多的书籍了。

兰色精灵 发表于 2015-6-27 21:41:03

发几份SQL课件,以飨阅者

莫相离 发表于 2015-7-18 06:24:08

其中最有名的应该是row_number了。这个终于解决了用临时表生成序列号的历史,而且SQLServer2005的row_number比Oracle的更先进。因为它把Orderby集成到了一起,不用像Oracle那样还要用子查询进行封装。

再见西城 发表于 2015-7-21 21:00:37

对一张百万级别的表建游标,同时又没有什么过滤条件,取得游标效率是如果直接SQL查询百万条数据;如果再对每条记录做处理,耗时将更长。
页: [1]
查看完整版本: 发布MYSQL利用指南(下)