mysql 将数据插入数据表乱码问题

mysql 创建数据库、数据表,默认设置是latin1_swedish_ci

所以我们创建数据库和数据表的时候应该根据自己的需要修改编码的格式,一般用utf8_general_ci

也可以用一劳永逸的方法,修改mysql的配置文件my.ini

检索[client]在她的下面添加

default-character-set=utf8

检索[mysql]和[mysqld]依次添加

default-character-set=utf8

character_set_server=utf8

保存重启环境再次创建数据库:

时间: 2024-11-05 16:00:11

mysql 将数据插入数据表乱码问题的相关文章

MySQL将表a中查询的数据插入到表b中

MySQL将表a中查询的数据插入到表b中 如果表b存在 insert into b select * from a; 如果表b不存在 create table b as select * from a; 扩展: 将b表中的某写字段值插入到a表中 insert into a (userID,userName) select b.userID,b.userName from tr_ajax_chat_messages; 将a表和b表userID相等的值保存到a表 update a set a.use

mysql使用存储过程插入数据后,参数为中文的为?或乱码

最近了解了一下mysql存储过程,之前版本的mysql不支持存储过程,5.0版本后就可以支持存储过程的使用:恰好笔者下载使用版本为5.6.20: 做了一个给表插入数据的简单存储过程,发现打开表后汉字全部显示为?号.如下: 于是上网查资料,忙了两小时才搞定!好了,现在简单叙述一下. 笔者遇见的问题是由两种原因引起的: 第一:使用Navicat数据库客户端建立表设置问题导致的,如下: 将上边操作完成后,可以在表里插入汉字,没有?号或者乱码现象了,本以为问题解决了,但使用存储过程时依然插入的是?号:然

向mysql中批量插入数据的性能分析

MYSQL批量插入数据库实现语句性能分析 假定我们的表结构如下 代码如下   CREATE TABLE example (example_id INT NOT NULL,name VARCHAR( 50 ) NOT NULL,value VARCHAR( 50 ) NOT NULL,other_value VARCHAR( 50 ) NOT NULL) 通常情况下单条插入的sql语句我们会这么写: 代码如下   INSERT INTO example(example_id, name, valu

php笔记七:php操作MySQL表格(插入数据)

1.用到的SQL语句 INSERT INTO 表名 (字段列表) VALUES (值列表),(值列表)... ; 注意: 1).字段列表要和值列表对应 2).当向表中的所有字段插入数据时,可以将字段列表省略 2.例子: <?php //向表中插入数据 //包含连接数据库文件(两种方法,require比include更加严格,如果路径不对会报严重错误) //include 'conn.php'; require 'conn.php'; //拼装插入数据的SQL语句 $sql = "INSER

hive从查询中获取数据插入到表或动态分区

(前人写的不错,很实用,负责任转发)转自:http://www.crazyant.net/1197.html Hive的insert语句能够从查询语句中获取数据,并同时将数据Load到目标表中.现在假定有一个已有数据的表staged_employees(雇员信息全量表),所属国家cnty和所属州st是该表的两个属性,我们做个试验将该表中的数据查询出来插入到另一个表employees中. 1 2 3 4 INSERT OVERWRITE TABLE employees PARTITION (cou

mysql:insert插入数据过慢如何解决,设置innodb_flush_log_at_trx_commit为0就能解决

问题: 最近在做性能测试,造数据,发现insert好慢,只有几十条每秒,很奇怪,最后再网上找到了原因. 网文如下: MY SQL insert 速度过慢 最近在用MySQL做存储,测试中发现插入数据太慢了,插入速度只有20-30 条/秒,后来查资料后,将MySQL的1个参数:innodb_flush_log_at_trx_commit,1改为了0(修改方法,可以直接修改my.ini(windows)/my.cnf(linux)中的对应参数,似乎用命令直接设置没有效果),插入速度就提升到了3000

用java向mysql数据库中插入数据为空

利用java面向对像编程,向数据库中插入数据时.遇到插入的数据为空的情况.在此做一小结: 1.数据库连接正正常 2.sql语句没有问题 3.程序没有报异常 4.代码: import java.util.Scanner; import org.junit.Test;public class JDBCTest { //2).在测试方法testAAddStudent()中 //1.获取从控制台输入的Student对象:Student student=getStudentFromConsole(); /

mysql数据库新插入数据,需要立即获取最新插入的id

在MySQL中,使用auto_increment类型的id字段作为表的主键.通常的做法,是通过"select max(id) from tablename"的做法,但是显然这种做法需要考虑并发的情况,需要在事务中对主表以"X锁",待获得max(id)的值以后,再解锁. 这种做法需要的步骤比较多,有些麻烦,而且并发性也不好.有没有更简单的做法呢?答案之一是通过select LAST_INSERT_ID()这个操作.乍一看,它和select max(id)很象,但实际上

mysql基础之插入数据

现在我们已经建立了二个表,接下来看一下如何向表中添加数据.我们可以使用最简单的方法:INSERT语句.使用INSERT语句,可以为表添加一条或多条记录.我们先向authors表中添加数据,再向books表中添加数据,因为books表引用了authors表中的字段: INSERT INTO authors(author_last,author_first,country) VALUES ('Greene','Graham','United Kingdom'); SELECT LAST_INSERT