mysql varchar大写
时间: 2023-11-22 20:50:39 浏览: 140
根据提供的引用[1],MySQL对于varchar类型的字符存储是否大小写敏感可以通过查询配置参数来获得。具体来说,可以使用以下命令查询:
```sql
show Variables like '%lower_case_table_names';
```
如果结果为0,则表示MySQL对于varchar类型的字符存储是大小写敏感的;如果结果为1,则表示MySQL对于varchar类型的字符存储是不区分大小写的。
根据提供的引用,如果MySQL设置对大小写敏感,可以通过执行存储过程将表名称修改成大写。具体步骤如下:
1. 创建存储过程uppercase,代码如下:
```sql
DROP PROCEDURE IF EXISTS uppercase;
DELIMITER $$
CREATE PROCEDURE uppercase(IN dbname VARCHAR(64))
BEGIN
DECLARE done INT DEFAULT FALSE;
DECLARE tablename VARCHAR(64);
DECLARE cur CURSOR FOR SELECT table_name FROM information_schema.tables WHERE table_schema = dbname;
DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = TRUE;
OPEN cur;
read_loop: LOOP
FETCH cur INTO tablename;
IF done THEN
LEAVE read_loop;
END IF;
SET @sql = CONCAT('RENAME TABLE ', dbname, '.', tablename, ' TO ', dbname, '.', UPPER(tablename));
PREPARE stmt FROM @sql;
EXECUTE stmt;
DEALLOCATE PREPARE stmt;
END LOOP;
CLOSE cur;
END$$
DELIMITER ;
```
2. 执行存储过程,将库名作为参数传入,代码如下:
```sql
CALL uppercase('your_database_name');
```
执行完毕后,所有表名称都会被修改成大写。
阅读全文