产品的质量依赖于过程的质量, 而过程的质量依赖于企业文化和管理! 欢迎大家来到我的小窝~!

mysql语句 大头

上一篇 / 下一篇  2011-01-12 14:31:46 / 个人分类:大头 mysql

MySQL常用操作基本操作,以下都是MySQL5.0测试通过首先说明下,记住在每个命令结束时加上;(分号)51Testing软件测试网"k/a|2An5}M?
1.
导出整个数据库51Testing软件测试网 V.tL6St\
mysqldump -u用户名-p --default-character-set=latin1数据库名>导出的文件名(数据库默认编码是latin1)51Testing软件测试网9l#i4kUU.p0ypb^l/v
mysqldump -u wcnc -p smgp_apps_wcnc > wcnc.sql51Testing软件测试网7?+v:S0J e
2.
导出一个表
)Z}qhJUQE0mysqldump -u
用户名-p数据库名 表名>导出的文件名
|/r u7iHY1j0mysqldump -u wcnc -p smgp_apps_wcnc users> wcnc_users.sql
.c1Q9Y5T%yy)_03.
导出一个数据库结构
#\7C,g6gs,d0
mysqldump -u wcnc -p -d –add-drop-table smgp_apps_wcnc >d:wcnc_db.sql
u;~Eh}V0-d
没有数据–add-drop-table在每个create语句之前增加一个drop table
[eJZ|@04.
导入数据库
9FM9^kmRR$q:}-~0
常用source命令
;R` Q;^8{-n\0
进入mysql数据库控制台,51Testing软件测试网tB-RCh r,aT
mysql -u root -p
_4rJ {]#S o0s I0mysql>use
数据库51Testing软件测试网qp iq@`H(}
然后使用source命令,后面参数为脚本文件(如这里用到的.sql)
atKBo0mysql>source d:wcnc_db.sql
51Testing软件测试网Sl ViS

一、启动与退出
sl t;ugqt9``#d0
1、进入MySQL:启动MySQL Command Line ClientMySQLDOS界面),直接输入安装时的密码即可。此时的提示符是:mysql>51Testing软件测试网`XI/T'WW V
2
、退出MySQLquitexit51Testing软件测试网B$~#M[ Mc p9O
二、库操作51Testing软件测试网 T |/I?f]Y/P
1、、创建数据库
;F*@o9st-l0
命令:create database<数据库名>
iAV![3`c_ C0
例如:建立一个名为xhkdb的数据库
'i r$Z th8A3O)Mp0mysql> create database xhkdb;51Testing软件测试网 DlJR&~!P#B6~ xU
2
、显示所有的数据库
F,iT_[L#g0
命令:show databases(注意:最后有个s51Testing软件测试网JNK:fPe'K
mysql>show databases;
[*Y/_^)dR"IoM8V03
、删除数据库
;T0}:r|qLP*u(Y0
命令:drop database<数据库名>
;HB3O;RA$B9F4k0
例如:删除名为xhkdb的数据库51Testing软件测试网$^/p)Ir$Bs8y0kK @
mysql>drop databasexhkdb;51Testing软件测试网vZ8q[UJ:V
4
、连接数据库
{xAI-|4Z0
命令:use<数据库名>
b1K*R Mmft1n0
例如:如果xhkdb数据库存在,尝试存取它:51Testing软件测试网s/Y+K kB3?
mysql>usexhkdb;
}lcJw5Jrj l0
屏幕提示:Database changed51Testing软件测试网`;E;R?2@X"J2D
5
、当前选择(连接)的数据库51Testing软件测试网HZB9p{4I-^,|I
mysql>select database();51Testing软件测试网Tc(Ho&K'nbN
51Testing软件测试网/q7`1d vn-u.fcp+{;b

6、当前数据库包含的表信息:51Testing软件测试网J*JJ?{&m
mysql>show tables;
(注意:最后有个s
&\6o2r}2|7k3~Y e0
} ah%B(Fc&e w0
三、表操作,操作之前应连接某个数据库51Testing软件测试网2i3qQN8^,_F}ui
1
、建表
4E.OS d4@bA6q6bI0
命令:create table<表名> ( <字段名1> <类型1> [,..<字段名n> <类型n>]);
51Testing软件测试网_];~Wm_6g

mysql>create tableMyClass(51Testing软件测试网/Kw3S.x6B
> id int(4) not nullprimary key auto_increment,51Testing软件测试网OEX8Fn
> name char(20) not null,51Testing软件测试网3jg1E@Aa
> sex int(4) not nulldefault'0',
!B _:a/B*\*?*|_9B0> degree double(16,2));
%BJ)l5R8w{p&K02
、获取表结构51Testing软件测试网CZJqJ
命令:desc表名,或者show columns from表名
$qSo]9k8bk ^ ]0mysql>
DESCRIBE  MyClass51Testing软件测试网q*h7h~*ci
mysql>descMyClass;
o%]*s)~ v!RILG3B0mysql>show columns from MyClass;
xIPk }l"Jj3N03
、删除表
Q B!iN\o(Kz%d!Y0
命令:drop table<表名>51Testing软件测试网xN2l N(R0Q y:F
例如:删除表名为MyClass的表
$I'|exC&]D0mysql>drop tableMyClass;
OeV1g['h6I04
、插入数据51Testing软件测试网@;XS V\"yx
命令:insert into<表名> [( <字段名1>[,..<字段名n > ])]values(1 )[, (n )]51Testing软件测试网b.tgYm#O
例如,往表MyClass中插入二条记录,这二条记录表示:编号为1的名为Tom的成绩为96.45,编号为2的名为Joan的成绩为82.99,编号为3的名为Wang的成绩为96.5.
@ O5y4aPy0mysql>insert intoMyClassvalues(1,'Tom',96.45),(2,'Joan',82.99), (2,'Wang', 96.59);51Testing软件测试网EZ;T.z#ohw7B s
5
、查询表中的数据51Testing软件测试网vK#? dR6[9i-C4tK_
1)
、查询所有行51Testing软件测试网'E^f'X%@?$V0P
命令:select<字段1,字段2...>from<表名>where<表达式>
mk9NG Aj7q$e.d;_0
例如:查看表MyClass中所有数据51Testing软件测试网6^%]Q,N(G4s(Q+AV
mysql> select * from MyClass;
F4Y6mpb*S3wK02
)、查询前几行数据51Testing软件测试网Yd$~(Il:Y!|
例如:查看表MyClass中前2行数据
!S lf0k/cT(_yD2f0mysql>select * fromMyClassorder byidlimit0,2;
L6cp[3rv'][(zP06
、删除表中数据
v:Z$uMM]0
命令:delete from表名where表达式51Testing软件测试网 B:Gt{N0mi!h
例如:删除表MyClass中编号为1的记录51Testing软件测试网C'[ gJ@
mysql>delete fromMyClasswhereid=1;51Testing软件测试网y"cELG6C[ O F2j
7
、修改表中数据:update表名set字段=新值,…where条件
(TGI6}q7_w0ky0mysql>updateMyClasssetname='Mary'whereid=1;
6u u kA"uK$t?07
、在表中增加字段:
9X!K'h&X.M4hF6z051Testing软件测试网5u lnU*U2V3pe`

命令:alter table表名add字段 类型其他;51Testing软件测试网pk`U[~]-BT
例如:在表MyClass中添加了一个字段passtest,类型为int(4),默认值为051Testing软件测试网-L V.M;ZRgNW
mysql>alter tableMyClassaddpasstestint(4)default'0'
*Q,y&\BX8N9y/@b6c:A} o%K08
、更改表名:51Testing软件测试网 V!f$An,X)L0Cy7?#e9{)H
命令:rename table原表名to新表名;
a`:n tS1[I-P0
例如:在表MyClass名字更改为YouClass
W:ib|E*Y1Q j0mysql>rename tableMyClasstoYouClass;

w"Z#Ir bR0


NXl M7C{2t.}0
更新字段内容51Testing软件测试网5[;f},udjz/h
update
表名set字段名=新内容51Testing软件测试网H5jx ^:AP
update
表名set字段名= replace(字段名,'旧内容','新内容');

n/JW;N;@%L051Testing软件测试网6ru m.W+r'O_ f

文章前面加入4个空格51Testing软件测试网~s)^ Cu#o.^ C
update article set content=concat('
  ',content);
H.{7z3H~` hyE0
2~Kgr*U5Tm0
字段类型51Testing软件测试网 I+LDo u} }
1INT[(M)]型: 正常大小整数类型51Testing软件测试网zqU)P V)X Twh
2
DOUBLE[(M,D)] [ZEROFILL]型: 正常大小(双精密)浮点数字类型
/^'Bzf$z5B6e6w03
DATE日期类型:支持的范围是1000-01-019999-12-31MySQLYYYY-MM-DD格式来显示DATE值,但是允许你使用字符串或数字把值赋给DATE
NmT2m$B[$AQ{04
CHAR(M)型:定长字符串类型,当存储时,总是是用空格填满右边到指定的长度51Testing软件测试网$n:?0V FBp6V
5
BLOB TEXT类型,最大长度为65535(2^16-1)个字符。51Testing软件测试网7g L2wkct ru6Ixd$O
6
VARCHAR型:变长字符串类型

`#lX5IDN9H%Z#T051Testing软件测试网:mJB4AO

Fh-Tlom:| m#pQ0

\ [2F hA1z/o0mysql怎么定义外键51Testing软件测试网*CP)l/O F&gLHl9A

EgF&_7k0建立外键的前提: 本表的列必须与外键类型相同(外键必须是外表主键)。51Testing软件测试网]S~&o"As&X]

]1bx+J6l#z;Aw0外键作用: 使两张表形成关联,外键只能引用外表中的列的值!51Testing软件测试网&jOx ^2Bk e V}
51Testing软件测试网? e5WH@;t!y%YX
指定主键关键字: foreign key(列名)51Testing软件测试网$f0xze;f&BRgLk

"SOd1SI`8]:q0引用外键关键字: references <外键表名>(外键列名)
,GGE8YV#n VA'{(VN qE0
ls0T!vc9x^u l4k0事件触发限制: on delete和on update , 可设参数cascade(跟随外键改动), restrict(限制外表中的外键改动),set Null(设空值),set Default(设默认值),[默认]no action51Testing软件测试网ST}$B'M{As

S1kqy'I7|Wl:@0例如:51Testing软件测试网5xr$n,Y3D0xV?

g*F)u [j1e'f0outTable表 主键 id 类型 int51Testing软件测试网_B-YL2GMGs*L
51Testing软件测试网fL#E+~8E9z}
创建含有外键的表:51Testing软件测试网&_P JR6T8{
create table temp(51Testing软件测试网{j"QIcr#]x
id int,
h4e1g)s1|r0name char(20),51Testing软件测试网u-o5^B]P \
foreign key(id) references outTable(id) on delete cascade on update cascade);51Testing软件测试网UE*\?,~
51Testing软件测试网Wl.Qpnw u+KQ gM$x
说明:把id列 设为外键 参照外表outTable的id列 当外键的值删除 本表中对应的列筛除 当外键的值改变 本表中对应的列值改变。
{n!wC U'[0

ZX-rC-L,Y4Hkg&{F0

5.导入数据库表  51Testing软件测试网&o Z'W/YTZQ
  1)创建.sql文件51Testing软件测试网*^!v'L C0P_/d-q
  2)先产生一个库如auction.c:mysqlbin>mysqladmin -u root -p creat auction,会提示输入密码,然后成功创建。51Testing软件测试网yG.h3Gc^
  2)导入auction.sql文件
-g#W`"O/PnS0
  c:mysqlbin>mysql -u root -p auction < auction.sql
8A+F a R1J#xiD*B0
  通过以上操作,就可以创建了一个数据库auction以及其中的一个表auction
6x4JA:u"C6@ v0
  6.修改数据库51Testing软件测试网5fo-C X;_]
  1)在mysql的表中增加字段:
*t1Z+l5a:m0
  alter table dbname add column userid int(11) not null primary key auto_increment;
?9I+Wz/~[$hT0
  这样,就在表dbname中添加了一个字段userid,类型为int(11)51Testing软件测试网!|M `"q4M"B:Lk%f p
  7mysql数据库的授权51Testing软件测试网'K A"`mc#{+g?
  mysql>grant select,insert,delete,create,drop
^u)T&hb;XB2D0
  on *.* (test.*/user.*/..)
R'h5@ A"Bl*Nx0H0
  to用户名@localhost
"Y6}DI)@0L#z&d/\i0
  identified by '密码'51Testing软件测试网 LySv,liA-Q's
  如:新建一个用户帐号以便可以访问数据库,需要进行如下操作:51Testing软件测试网2J+pE|/v&C*qT3`)H.b
  mysql> grant usage51Testing软件测试网 CgB%pl(K5ZU
  -> ON test.*
sx8c)WJ0
  -> TOtestuser@localhost;
t Ti HLf%Zb(it)g0
  Query OK, 0 rows affected (0.15 sec)
`1C cq!l ^{ b0
  此后就创建了一个新用户叫:testuser,这个用户只能从localhost连接到数据库并可以连接到test数据库。下一步,我们必须指定testuser这个用户可以执行哪些操作:51Testing软件测试网9P @-bYj-^Gq
  mysql> GRANT select, insert, delete,update
!E DSk-`?8d*Gx0
  -> ON test.*
7}&k m4?3C D5@q0
  -> TOtestuser@localhost;
M;QF7q7jj0m0
  Query OK, 0 rows affected (0.00 sec)51Testing软件测试网#b5uu!T g9U&X
  此操作使testuser能够在每一个test数据库中的表执行SELECTINSERTDELETE以及UPDATE查询操作。现在我们结束操作并退出MySQL客户程序:51Testing软件测试网-R5s[/QKo2~
  mysql> exit51Testing软件测试网6m)A{ Ls$L E5{
  Bye9!51Testing软件测试网+l2OkwKz


TAG: MySQL mysql 大头 booksir

小葱拌豆腐 引用 删除 caiw0418   /   2011-01-12 16:53:11
在使用MySQL-Front连接mysql的时候发生的这个错误
ERROR 1130: Host 192.168.88.160 is not allowed to connect to this MySQL server

1。 改表法。可能是你的帐号不允许从远程登陆,只能在localhost。这个时候只要在localhost的那台电脑,登入mysql后,更改 “mysql” 数据库里的 “user” 表里的 “host” 项,从”localhost”改称”%”

mysql -u root -p

mysql>use mysql;

mysql>update user set host = ‘%’  where user =’root’;

mysql>flush privileges;

mysql>select ‘host’,'user’ from user where user=’root’;

现在就可以连接了!

2. 授权法。例如,你想myuser使用mypassword从任何主机连接到mysql服务器的话。

GRANT ALL PRIVILEGES ON *.* TO‘myuser’@'%’IDENTIFIED BY ‘mypassword’ WITH GRANT OPTION;

如果你想允许用户myuser从ip为192.168.1.3的主机连接到mysql服务器,并使用mypassword作为密码

GRANT ALL PRIVILEGES ON *.* TO‘myuser’@'192.168.1.3′IDENTIFIED BY ‘mypassword’ WITH

转自:http://topic.csdn.net/u/20090515/21/2b3c9a12-d8a5-4bb1-9895-6069cef5aef8.html?16148

windowsxp系统 mysql-5.0.11-beta-win32
提示:1045 access denied for user 'root'@'localhost' using password yes
前几天都好好的,昨天没弄,结果今天晚上过来提示上面的这个错误,重启mysql还是不可以
网上的方法看了几个但是不知道怎么弄
方法一:
# /etc/init.d/mysql stop
# mysqld_safe --user=mysql --skip-grant-tables --skip-networking &
# mysql -u root mysql
mysql> UPDATE user SET Password=PASSWORD(’newpassword’) where USER=’root’;
mysql> FLUSH PRIVILEGES;
mysql> quit
# /etc/init.d/mysql restart
# mysql -uroot -p
Enter password: <输入新设的密码newpassword>
mysql>
方法二:
直接使用/etc/mysql/debian.cnf文件中[client]节提供的用户名和密码:
# mysql -udebian-sys-maint -p
Enter password: <输入[client]节的密码>
mysql> UPDATE user SET Password=PASSWORD(’newpassword’) where USER=’root’;
mysql> FLUSH PRIVILEGES;
mysql> quit
# mysql -uroot -p
Enter password: <输入新设的密码newpassword>
mysql>

内容来自: 脚本之家 www.jb51.net

另一个方法
Windows:

1. 管理员登陆系统,停止mysql服务或者结束mysqld-nt进程
2. 进入命令行,来到mysql的安装目录.假设安装目录为 d:\mysql\ , CMD进入命令行
3. 运行 d:\mysql\bin\mysqld-nt --skip-grant-tables 启动mysql,关闭权限的检查
4. 运行 d:\mysql\bin\mysqladmin -u root flush-privileges password "newpassword" 重设root密码
5. 重新启动mysql服务

第4步也可以直接修改mysql表,所用到的SQL语句同linux部分,这里就不再重复了.

请不要乱给答案否则不给分
一定要试验过的成功经验,谢谢!
小葱拌豆腐 引用 删除 caiw0418   /   2011-01-12 15:07:11
一、导入数据
1、确定
数据库默认编码,比如编码
为gbk,将读入途径编码同样设为gbk,命令为:
           set names gbk;
2、source
d:/20080613.sql 导入数据。验证
数据库
中的数据是否存在乱码。
3、如果仍然存在乱码问题,这时候就要考虑改变导入文件的编码,试着
导入,直至没有乱码出现。
      网页数据存入乱码问题依照以上方法同样可以解决。可将网页编码改为与
数据库
相同的编码。问题自
然解决。
二、导出数据
mysqldump -u root -p --default-character-set=数据编码 数据库名称> file.sql
定义编码导出
mysqldump -u root -p --default-character-set=utf8 discuss_chi>
dis.sql
定义编码导入
mysql -u root -p --default-character-set=utf8 -f discuss_chi<dis.sql
如还是乱码使用二进导入
mysql -u root -p --default-character-set=binary -f
discuss_chi<dis.sql
还是不行,导出和导入都使用二进方式
导出
mysqldump -u root -p --default-character-set=binary discuss_chi>
dis.sql
导入
mysql -u root -p --default-character-set=binary -f
discuss_chi<dis.sql ......
 

评分:0

我来说两句

日历

« 2024-04-06  
 123456
78910111213
14151617181920
21222324252627
282930    

数据统计

  • 访问量: 50631
  • 日志数: 65
  • 文件数: 1
  • 建立时间: 2010-11-23
  • 更新时间: 2011-10-18

RSS订阅

Open Toolbar