日度归档:2019年8月14日

MySQL 如何修改一个列为自增列?


摘要:
下文讲述MySQL中使用sql脚本一个将一个已存在列修改为自增列的方法分享,如下所示:

例:

mysql> create table maomao(keyId int);
Query OK, 0 rows affected (1.37 sec)

mysql> insert into maomao(keyId)values (20),(19),(18),(17),(16);
Query OK, 5 rows affected (0.04 sec)
Records: 5  Duplicates: 0  Warnings: 0

mysql> select keyId from maomao;
+------+
| keyId   |
+------+
|   20 |
|   19 |
|   18 |
|   17 |
|   16 |
+------+
rows in set (0.00 sec)

mysql> ALTER TABLE maomao add autoId int;
Query OK, 0 rows affected (2.84 sec)
Records: 0  Duplicates: 0  Warnings: 0

mysql> select * from maomao;
+------+------+
| keyId   | autoId  |
+------+------+
|   20 | NULL |
|   19 | NULL |
|   18 | NULL |
|    17 | NULL |
|    16 | NULL |
+------+------+
rows in set (0.00 sec)

mysql> alter table maomao change autoId  autoId int NOT NULL AUTO_INCREMENT; ---修改autoId为自增列
ERROR 1075 (42000): Incorrect table definition; there can be only one auto column and it must be defined as a key
 
mysql> select * from maomao;
+------+-----+
| keyId   | autoId |
+------+-----+
|   20 |   1 |
|    19 |   2 |
|    18 |   3 |
|    17 |   4 |
|    16 |   5 |
+------+-----+
rows in set (0.00 sec)

mysql 如何给查询出的表数据重新进行编号呢?


摘要:
下文讲述MySQL中使用SQL脚本给查询出的表数据进行重新编号的方法,如下所示:

具体实现方法,如下所示:
例:
对数据表“maomao”进行查询重新新编号

 SELECT @rownum:=@rownum+1 AS rowNumber, maomao.*
FROM (SELECT @rownum:=0) r, maomao
MySQL对数据表重新生成编号方法分享

MySQL对数据表重新生成编号方法分享

mssql sqlserver 如何使用sql脚本删除特殊字符呢?


摘要:
下文讲述sqlserver中使用sql脚本剔除特殊字符的方法分享,如下所示:
实验环境:sql server 2008 R2



一、剔除两头空格的方法

使用ltrim和rtrim函数剔除两头空格的方法。
ltrim:剔除左空格
rtrim:剔除右空格

 select ltrim(rtrim(待替换字符串))


二、使用replace替换特殊字符

使用ascii码替换特殊字符串
例:
char(64) ascii码表示字符“@”,那么我们替换@特殊字符,可以采用以下两种模式对“@”字符进行替换处理,如下所示:

  select replace('maomao@365.com',char(64),'&')
----等同于
 select replace('maomao@365.com',@,'&')


扩展说明:
在sqlserver中,我们经常发现一些看不见的字符,导致一些异常出错,下文分别讲述两替换tab、空格、换行符的方法
select replace(‘待替换内容’,char(9),”) —替换tab
select replace(‘待替换内容’,char(13),”) —替换回车
select replace(‘待替换内容’,char(10),”) —替换换行
select replace(‘待替换内容’,char(32),”) —替换空格