易截截图软件、单文件、免安装、纯绿色、仅160KB
热门标签: c c# c++ asp asp.net linux php jsp java vb Python Ruby mysql sql access Sqlite sqlserver delphi javascript Oracle ajax wap mssql html css flash flex dreamweaver xml
 最新文章 :

MySQL的查询优化很傻

select id from message where author_id in (select followed_id from Relation where follower_id=1) order by id desc   和 分别执行 $userlist = select followed_id from Relation where follower_id=1 再 select id from message where author_id in ($userlist) order by id desc   竟然有两个数量级的差别,DAMN IT!!!! ......

Mysql 表结构

MYSQL中修改表结构ALTER用法
ALTER TABLE Result ADD xinlinDoc longblob;
ALTER TABLE Result ADD xinlinDocName varchar(50);
其它实例:
CREATE TABLE t1(a INTEGER,b CHAR(10)); // 创建的表t1开始
ALTER TABLE t1 RENAME t2; // 重命名表,从t1到t2
ALTER TABLE t2 MODIFY a TINYINT NOT NULL, CHANGE b c CHAR(20); // 为了改变列a,从INTEGER改为TINYINT NOT NULL(名字一样),并且改变列b,从CHAR(10)改为CHAR(20),同时重命名它,从b改为c:
ALTER TABLE t2 ADD d TIMESTAMP; // 增加一个新TIMESTAMP列,名为d
ALTER TABLE t2 ADD INDEX (d), ADD PRIMARY KEY (a); // 在列d上增加一个索引,并且使列a为主键
ALTER TABLE t2 DROP COLUMN c; // 删出列c
ALTER TABLE t2 ADD c INT UNSIGNED NOT NULL AUTO_INCREMENT, ADD INDEX (c); // 增加一个新的AUTO_INCREMENT整数列,命名为c。注意,我们索引了c,因为AUTO_INCREMENT柱必须被索引,并且另外我们声明c为NOT NULL,因为索引了的列不能是NULL。当你增加一个AUTO_INCREMENT列时,自动地用顺序数字填入列值。 ......

MySQL数据库之UPDATE更新语句精解

 
一、INSERT和REPLACE
INSERT和REPLACE语句的功能都是向表中插入新的数据。这两条语句的语法类似。它们的主要区别是如何处理重复的数据。
1. INSERT的一般用法
MySQL中的INSERT语句和标准的INSERT不太一样,在标准的SQL语句中,一次插入一条记录的INSERT语句只有一种形式。
INSERT INTO tablename(列名…) VALUES(列值);
而在MySQL中还有另外一种形式。
INSERT INTO tablename SET column_name1 = value1, column_name2 = value2,…;
第一种方法将列名和列值分开了,在使用时,列名必须和列值的数一致。如下面的语句向users表中插入了一条记录:
INSERT INTO users(id, name, age) VALUES(123, '姚明', 25);
第二种方法允许列名和列值成对出现和使用,如下面的语句将产生中样的效果。
INSERT INTO users SET id = 123, name = '姚明', age = 25;
如果使用了SET方式,必须至少为一列赋值。如果某一个字段使用了省缺值(如默认或自增值),这两种方法都可以省略这些字段。如id字段上使用了自增值,上面两条语句可以写成如下形式:
INSERT INTO users (name, age) VALUES('姚明',25);
INSERT INTO uses SET name = '姚明', age = 25;
MySQL在VAL ......

linux 下c++及mysql对时间处理的常用技巧

mysql 截取某一个时间(datetime类型)的日期:
方法1:select date(row_name) from table_name where row = row1;
方法2:select left(row_name, 10) from table_name where row = row1;
方法3:select cast(row_name as char[10]) from table_name where row = row1;
取得某个日期的time_t数值:select unix_timestamp(date(row_name)) from table_name where row = row1;
以time_t为参数取得某个时间
time_t 是'1970-01-01 00:00:00'以来的秒数
select '1970-01-01 00:00:00'+ INTERVAL time_t_num SECOND ;
取得当前日期:select curdate();
取得当前时间:select now();
将日期转化为短日期格式
SELECT REPLACE(date(row_name),  '-0',  '-');
linux下c++常用时间处理函数
clock()用来程序计时
例如: 以下摘自
#include “stdio.h”
#include “stdlib.h”
#include “time.h”
int main( void )
{
   long    i = 10000000L;
   clock_t start, finish;
   double  duration;
   /* 测量一个事件持续的时间*/
   pri ......

linux 下c++及mysql对时间处理的常用技巧

mysql 截取某一个时间(datetime类型)的日期:
方法1:select date(row_name) from table_name where row = row1;
方法2:select left(row_name, 10) from table_name where row = row1;
方法3:select cast(row_name as char[10]) from table_name where row = row1;
取得某个日期的time_t数值:select unix_timestamp(date(row_name)) from table_name where row = row1;
以time_t为参数取得某个时间
time_t 是'1970-01-01 00:00:00'以来的秒数
select '1970-01-01 00:00:00'+ INTERVAL time_t_num SECOND ;
取得当前日期:select curdate();
取得当前时间:select now();
将日期转化为短日期格式
SELECT REPLACE(date(row_name),  '-0',  '-');
linux下c++常用时间处理函数
clock()用来程序计时
例如: 以下摘自
#include “stdio.h”
#include “stdlib.h”
#include “time.h”
int main( void )
{
   long    i = 10000000L;
   clock_t start, finish;
   double  duration;
   /* 测量一个事件持续的时间*/
   pri ......

linux 下c++及mysql对时间处理的常用技巧

mysql 截取某一个时间(datetime类型)的日期:
方法1:select date(row_name) from table_name where row = row1;
方法2:select left(row_name, 10) from table_name where row = row1;
方法3:select cast(row_name as char[10]) from table_name where row = row1;
取得某个日期的time_t数值:select unix_timestamp(date(row_name)) from table_name where row = row1;
以time_t为参数取得某个时间
time_t 是'1970-01-01 00:00:00'以来的秒数
select '1970-01-01 00:00:00'+ INTERVAL time_t_num SECOND ;
取得当前日期:select curdate();
取得当前时间:select now();
将日期转化为短日期格式
SELECT REPLACE(date(row_name),  '-0',  '-');
linux下c++常用时间处理函数
clock()用来程序计时
例如: 以下摘自
#include “stdio.h”
#include “stdlib.h”
#include “time.h”
int main( void )
{
   long    i = 10000000L;
   clock_t start, finish;
   double  duration;
   /* 测量一个事件持续的时间*/
   pri ......

Mysql备份还原的一个bug

从mysql备份出来的sql文件进行还原操作时报错,查看错误日志,内容如下:
Error Code: 1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'USING BTREE
) ENGINE=InnoDB AUTO_INCREMENT=50913 DEFAULT CHARSET=gbk' at line 21
原因如下:
导出文件中的源码:
  PRIMARY KEY (`row_id`) USING BTREE,
  UNIQUE KEY `columnAindex` (`columnA`),
  KEY `columnBindex` (`columnB`) USING HASH,
  KEY `columnCindex` (`columnC`) USING BTREE,
...
正确的写法:
  PRIMARY KEY USING BTREE  (`row_id`),
  UNIQUE KEY `columnAindex` (`columnA`),
  KEY `columnBindex` USING HASH (`columnB`),
  KEY `columnCindex` USING BTREE (`columnC`),
...
将导出文件中的所有索引类型(USING BTREE 等)挪到索引列(columnB等)的前面,就能够正常完成导入操作。 ......

数据库基础:MySQL 添加用户的两种方法

 
有2个不同的方法增加用户:通过使用GRANT语句或通过直接操作MySQL授权表。比较好的方法是使用GRANT语句,因为他们是更简明并且好像错误少些。
 
下面的例子显示出如何使用MySQL客户安装新用户。这些例子假定权限已缺省被安装。这意味
着为了改变,你必须在MySQL正在运行同一台机器上,你必须作为MySQL
root用户连接,并且root用户必须对MySQL数据库有insert权限和reload管理权限。另外,如果你改变了root用户口令,你必须如下
的MySQL命令指定它。
 
你可以通过发出GRANT语句增加新用户:
 
shell> mysql --user=root mysql
mysql> GRANT ALL PRIVILEGES ON *.* TO monty@localhost
IDENTIFIED BY 'something' WITH GRANT OPTION;
mysql> GRANT ALL PRIVILEGES ON *.* TO monty@"%"
IDENTIFIED BY 'something' WITH GRANT OPTION;
mysql> GRANT RELOAD,PROCESS ON *.* TO admin@localhost;
mysql> GRANT USAGE ON *.* TO dummy@localhost;
 
这些GRANT语句安装3个新用户:
 
monty:可以从任何地方连接服务器的一个完全的超级用户,但是必须使用一个口令
('somethin ......
总记录数:40319; 总页数:6720; 每页6 条; 首页 上一页 [5702] [5703] [5704] [5705] 5706 [5707] [5708] [5709] [5710] [5711]  下一页 尾页
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号