精华内容
下载资源
问答
  • 最近的项目中遇到了一个棘手的问题,由于许多业务都是放在定时中执行,有一个需求是统计商户或者门店创建的活动效果,在近期的3.5版本做了很大调整,因此在新的统计方式需要兼容历史活动,所以得把所有的活动遍历...

    最新更新2011-9-28号。

    最近的项目中遇到了一个棘手的问题,由于许多业务都是放在定时中执行,有一个需求是统计商户或者门店创建的活动效果,在近期的3.5版本做了很大调整,因此在新的统计方式需要兼容历史活动,所以得把所有的活动遍历统计一次。考虑到

    上线当天晚上定时会跑得很慢,所以上级决定目前只将2011年5月1号之后创建的活动和5月1号前创建并且上线时仍有更新的活动。5月1号之前的活动等上线后,在一个新库中将数据跑出来,然后导入到线上库。如果线上库已经存在的数据,就不能导入。因为以线上环境的数据为准。今天将2011年1月1号到5月1号之间的活动数据在新库上跑出来了,线上已经存在的数据,是5月1号前创建并且在8月18号上线新版本后仍有更新的活动,这一部分数据不能覆盖,以线上的为准。

    先建立链接,连接到线上的数据库服务器,具体操作如图所示,别名ntow,然后输入用户名,密码

    4c869e2966f00fb2dfe166e12e2d9f1d.png

    在完成这个任务时,做了数据验证。

    将一个数据库上的analysis_invest_profit_store表中的数据导入

    --到线上数据库的analysis_invest_profit_store表中。要求:线上已经存在

    --的数据不可覆盖。 表analysis_invest_profit_store主键

    --是marketingid,coupontypeid和storeid组合的主键

    -- analysis_invest_profit_store@ntow t 表示线上库

    --1)第一步,找出线上与本地数据库相同的数据 执行结果为49条

    select s.*

    from analysis_invest_profit_store s,

    analysis_invest_profit_store@ntow t

    where s.marketingid = t.marketingid

    and s.coupontypeid = t.coupontypeid

    and s.storeid = t.storeid;

    --2)找出线上库不存在的数据

    -- 此语句执行结果是451条

    --本地新库中analysis_invest_profit_store表中一共有500条,验证数据不缺少

    select s.*

    from analysis_invest_profit_store s

    where not exists (select *

    from analysis_invest_profit_store@ntow t

    where s.marketingid = t.marketingid

    and s.coupontypeid = t.coupontypeid

    and s.storeid = t.storeid);

    验证数据条数是正确的,没有多余也没有缺少,所以就做下一步动作,将线上库不存在的数据导入到线上的数据库。

    --3)将线上库不存在的数据导入到线上表

    insert into analysis_invest_profit_store@ntow t

    select s.*

    from analysis_invest_profit_store s

    where not exists (select *

    from analysis_invest_profit_store@ntow t

    where s.marketingid = t.marketingid

    and s.coupontypeid = t.coupontypeid

    and s.storeid = t.storeid);

    整理一下Oracle在项目中常用的基本语句,算是一个小小的总结概要。

    1、获得当前时间

    select sysdate from dual

    2、获得char类型的时间

    select to_char(sysdate,'yyyy-MM-dd') as mydate from dual

    3、获得精确到秒的时间

    select to_char(sysdate,'yyyy-MM-dd HH24:MI:SS') as mydate from dual

    4、Oracle中用sql语句更改字段类型。

    alter table trans_buycoupon_record  rename column buy_num to buy_num1;

    alter table trans_buycoupon_record add buy_num number;

    update trans_buycoupon_record set buy_num=cast(buy_num1 as number);

    alter table trans_buycoupon_record drop column buy_num1;

    ----------------------------------------------------------------------------------------------------------------------------------

    (4月21日补充)

    5、A表与B表有关联,A和B都是col这个字段,但是A表中维护有记录B表中则没有,现在要将B表中的col字段的值更新为与A表中的col值一样update prepay_send_record ps set end_date =(select m.end_date from member_prepay_account m where m.merchant_id=ps.merchant_id and ps.customer_id=m.customer_id )  这里要注意的是要找到将要修改的表与数据来源的表的关系。

    4月12号,先总结到这里,以后持续更新中。

    8月15号更新:

    向Oracle表中加新索引:

    CREATE   INDEX   IND_CARBNOW_FRAMEID   ON     sms_send_record(marketing_id,biz_type);

    语法是:

    create INDEX 索引名  on  表名(字段名1,字段名2);

    Oracle中复制一张表的结构,用sql语句复制一张表结构

    同一个用户复制的话可以用

    Sql代码

    createtable新表asselect*from旧表     数据一起复制

    Sql代码

    createtable新表asselect*from旧表where1=2     空表

    不同用户复制的话可以用

    Sql代码

    createtableB.新表asselect*fromA.旧表

    copyfroma/atob/bcreatetableaaa   usingselect*fromaaa;

    6、将一张表的数据,插入到另一张表(Oracle中将数字类型以字符串形式拼接)

    insert into yd_person(person_id,person_name,mobile,store_id)

    select CONCAT('25010100006',t.mobile), t.name ,t.mobile ,'250101000060001' from yd_person_1209 t

    展开全文
  • 首先查询mysql 导出指定的路径,使用命令 show variables like '%secure%';... 导入使用命令: load data local infile "/var/lib/mysql-files/aa.sql" into table tbl_dict_item character set utf8;

    首先查询mysql 导出指定的路径,使用命令

    show variables like '%secure%';

    比如我的查询结果为

    Variable_name       Value

    secure_auth      ON

    secure_file_priv     /var/lib/mysql-files/

    那么应该使用路径 /var/lib/mysql-files/

    例如:

    SELECT a.dic_id, a.`name`, a.`value`, a.state, a.order_num FROM (

    SELECT dic_id, `name`, `value`, state, order_num FROM tbl_dict_item WHERE dic_id ='res_level'

    UNION SELECT dic_id, `name`, `value`, state, order_num FROM tbl_dict_item WHERE dic_id ='res_4'

    UNION SELECT dic_id, `name`, `value`, state, order_num FROM tbl_dict_item WHERE dic_id ='res_2'

    UNION SELECT dic_id, `name`, `value`, state, order_num FROM tbl_dict_item WHERE dic_id ='res_5'

    UNION SELECT dic_id, `name`, `value`, state, order_num FROM tbl_dict_item WHERE dic_id ='res_11'

    UNION SELECT dic_id, `name`, `value`, state, order_num FROM tbl_dict_item WHERE dic_id ='res_6') a

    INTO OUTFILE '/var/lib/mysql-files/aa.sql';

    导入使用命令:

    load data local infile "/var/lib/mysql-files/aa.sql" into table tbl_dict_item character set utf8;

    展开全文
  • mysql中把一个表的数据批量导入一个表中不管是在网站开发还是在应用程序开发中,我们经常会碰到需要将MySQL或MS SQLServer某个的数据批量导入到另一个表的情况,甚至有时还需要指定导入字段。本文就将以MySQL...

    mysql中把一个表的数据批量导入另一个表中

    不管是在网站开发还是在应用程序开发中,我们经常会碰到需要将MySQL或MS SQLServer某个表的数据批量导入到另一个表的情况,甚至有时还需要指定导入字段。

    本文就将以MySQL数据库为例,介绍如何通过SQL命令行将某个表的所有数据或指定字段的数据,导入到目标表 中。此方法对于SQLServer数据库,也就是T-SQL来说,同样适用 。

    类别一、 如果两张张表(导出表和目标表)的字段一致,并且希望插入全部数据,可以用这种方法:(此方法只适合导出两表在同一database)

    INSERT INTO 目标表 SELECT * FROM 来源表;

    例如,要将 articles 表插入到 newArticles 表中,则可以通过如下SQL语句实现:

    INSERT INTO newArticles SELECT * FROM articles;

    类别二、 如果只希望导入指定字段,可以用这种方法:

    INSERT INTO 目标表 (字段1, 字段2, ...) SELECT 字段1, 字段2, ... FROM 来源表;

    请注意以上两表的字段必须一致(字段类型),否则会出现数据转换错误。

    1、跨服务器复制表中数据

    insert into openrowset('sqloledb','localhost';'sa';'123',Test.dbo.Table_B)

    select * from Test.dbo.Table_A

    //启用Ad Hoc Distributed Queries:

    exec sp_configure 'show advanced options',1

    reconfigure

    exec sp_configure 'Ad Hoc Distributed Queries',1

    reconfigure

    //使用完成后,关闭Ad Hoc Distributed Queries:

    exec sp_configure 'Ad Hoc Distributed Queries',0

    reconfigure

    exec sp_configure 'show advanced options',0

    reconfigure

    2、//不夸服务器

    insert into dbo.Table_B) select * from dbo.Table_A

    将表名和数据库连接字符串用代码拼接好 然后执行上述您需要的sql语句 程序功能即可完成

    如何将一个mysql数据库中的一个表导入到另一个mysql数据库中

    db1为原数据库,db2为要导出到的数据库,fromtable 是要导出的表名

    1.方法一:

    登录导出到的数据库,执行

    create table fromtable select * from db1.fromtable;

    2.方法二:

    在cmd下执行,mysqldump -u root -p db1 fromtable file=d:/fromtable.sql; 输入秘密,root为用户名

    登录db2 执行 source d:/fromtable.sql;

    3.方法三:

    登录db1 执行 select * from fromtable into outfile "d:/fromtable .txt"; 导出纯数据格式

    登录db2 执行 load data infile d:/fromtable .txt into table fromtable; 需要先建一张和原表结构一样的空表。

    4.建一个odbc连接,先导出到access中,再导出到另一个库中。

    展开全文
  • 场景昨天系统自动备份了某一个数据库的全部数据,名dbAll.sql.gz。文件较大(如40G)今天因发现某一个表tableA的一条数据存在问题,需核对两条记录的变化。需从dbAll中找回tableA的数据,以便比较该记录。操作方案1....

    场景

    昨天系统自动备份了某一个数据库的全部表数据,名dbAll.sql.gz。文件较大(如40G)

    今天因发现某一个表tableA的一条数据存在问题,需核对两条记录的变化。需从dbAll中找回tableA的数据,以便比较该记录。

    操作方案

    1.将dbAll.sql.gz导入待比较的数据库(临时数据库)中,然后比较tableA。不推介,因为数据量太大,很耗时

    2.解压dbAll.sql.gz后,通过Java代码读取dbAll.sql中的关于tableA的CREATE语句及INSERT语句等到文件tableA.sql,然后通过tableA.sql导入临时数据库即可进行比较。

    3.参见(没试过):mysqldump 导出的是全库 alldb.sql 导入的时候可不可以只导其中的一个表

    法1:

    perl extract_sql.pl -t mytable -r mydumpfile > mytable.sql

    法2:

    cat test1db.sql | sed -n ‘/Table structure for table .test1./,/Table structure for table .test2./p'>/tmp/xxx.sql

    法3:

    awk ‘/Table structure for table .test1./,/Table structure for table .test2./{print}' src_bake_db.sql.gz > targetdb.sql

    法3说明:将src_bake_db.sql.gz压缩文件中的test1、test2表的数据导出到targetdb.sql中

    补充知识:mysql命令行导出整个库里面所有表的前一百条数据

    如下所示:

    mysqldump -uysp -pYspxxx db_name --where="1=1 limit 100" >/mnt/share/paxxx.com/backup.sql

    直接在命令行运行就可以了,不需要登陆mysql客户端。

    mysqldump -h 服务器名 -u 账号名-p 数据库名 --where="true limit 100"> /tmp/supports_launch.sql

    phpmyadmin导出php脚本:

    http://local.phpmyadmin.com/export.php

    以上这篇mysql实现从导出数据的sql文件中只导入指定的一个表就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。

    本文标题: mysql实现从导出数据的sql文件中只导入指定的一个表

    本文地址: http://www.cppcns.com/shujuku/mysql/363014.html

    展开全文
  • I have got two dedicated servers with root access. Both are running Linux. I want to import database from Server1 to Server2. I have already created an empty database on Server2.I want to know Linux c...
  • #!/usr/bin/env python# _*_ conding:utf-8 _*_import sysimport osimport timeimport datetimeimport MySQLdbbb=datetime.datetime.now()c_time=time.strftime("%Y%m%d",time.localtime(time.time()))today=datetim...
  • 用户: whnaproject 所属空间: whnaproject新用户 : wniec 所属新空间: wniec要求:将...常规过程:用exp命令把用户whnaproject的及数据导出,然后用IMP命令把导出的及数据导入到新用户wniec中。存在问题...
  • 但是,偶尔会遇到只恢复一个database或者一个表的情况。怎么解决呢?一、利用全备恢复一个库(database)的数据案例:朋友在群里问, MySQL全备份。如何只恢复一个库?1、采用--one-database 选项。不建议使用该方式,...
  • oracle imp导入库到指定空间1.创建空间create tablespace example_tablespace datafile ‘e:\****.dbf’ size 10m reuse autoextend on next 1m maxsize unlimited;www.2cto.com2.创建用户,指定空间,临时...
  • 如果目标已经存在,我希望查询将记录从一个表插入到另一个数据库的另一个表中,它应该将记录追加到的末尾。7个解决方案116 votes这个怎么样:USE TargetDatabaseGOINSERT INTO dbo.TargetTable(field1, field2, ...
  • 步:点击工具,选择数据传输 第二步:设置要链接的数据库 第三步:设置要传输的 第四步:点击下一步,然后点击开始 完成
  • 各位大哥:我没有建tablespace,但由于放空间的目录不同,现在在原来指定的目录下建好存放空间的目录,现在tablespace可以正常导入,但是现在报如下错误,大家帮忙看看啊,谢谢了.C:\>imp system/oracle full=y ...
  • 文章目录 有一个数据写入到了 test_db 的 table1,不想重新录入到 product_db 的 table1,所以想直接导过去。...如果你的 product_db 存在同名,可以换一个名字;然后在同一个 db 内用sql读写会方便很多。 ...
  • SQLServer将一个表的数据导入到另一个表 B数据转移到A 1、假如A存在 INSERTINTO A(a,b,c) (SELECT a,b,c FROM B) 2、假如A不存在 SELECT a,b,c INTO A FROM B 3、假如需要跨数据库 INSERT INTO A.[dbo].A...
  • 也是有三种调用方式:* 命令行调用* 参数文件调用* 交互方式调用2、同时,执行imp命令导入数据时也分为4种模式:模式、用户模式、空间模式和数据库模式3、执行导入前务必搞清楚的几问题:* 生成D......
  • Navicat 怎么复制到另一个库

    千次阅读 2021-01-07 09:59:19
    方法:打开 Navicat 工具 ->> 数据传输 填写目标 然后等待一下
  • 1.使用mysql连接工具navcat。...5.接下到将导出的数据,导入到目标数据库中,导入前,先在目标IP中建立对应的数据库名 6.在建好的数据库中点击右键,运行sql文件 7.选择刚才导出文件的路径,点击确认即可 ...
  • mysql 导入导出整个

    2021-01-28 04:46:21
    Front中新建你要建的数据库,这时是空数据库,如新建一个名为news的目标数据库 5,输入:mysql>use 目标数据库名 如我输入的命令行:mysql>use news; 6,导入文件:mysql>source 导入的文件名; 如我输入的命令行:...
  • 这里演示的是从MySQL的一个数据库ceshiqlone的tab_wzc1同步到yw中(同一台主机)(也可以在不同主机,只是需要SSH),不同的数据库可能结构等因素不同,不能用这个脚本,但是道理都一样,可以借鉴。vi mysql111.sh...
  • 关键是a,b,c,d环境的数据库在同一台主机的mysql实例下面,prd上面f对应a环境的f-a,b环境的f-b所以存在一个问题,直接mysqldump下来的是不能导入测试环境的测试的。那么就会涉及到从生产导下来的a名字的,...
  • 使用方法:Exp parameter_name=value or Exp parameter_name=(value1,value2……)只要输入参数help=y就可以看到所有帮助.EXP常用选项1.FULL,这用于导出整个数据库,在ROWS=N一起使用时,可以导出整个数据库的结构...
  • 本文介绍从 TiDB-A 导出数据到 TiDB-B ; 导出 Dumpling 包含在 tidb-toolkit 安装包中,可在此下载。 从 TiDB/MySQL 导出数据 需要的权限 SELECT RELOAD LOCK TABLES REPLICATION CLIENT 导出到 sql ...
  • 背景现在我有这么一个需求:数据库A的user需要导入到数据库B的accountuser表字段:uid,username,email,password,regdate,saltaccount表字段:id,name,email,password,type,salt导入的字段只有username,email,...
  • mysql根据一张数据更新另一张sql示例update a,bseta.name = b.namewherea.id = b.id一)在同一个数据库服务器上面进行数据间的数据导入导出:1. 如果tb1和tb2的结构是完全一样的,则使用以下的命令就可以将...
  • -------------------------------------从生产环境拷贝一个dmp备份文件,在另外一台电脑上搭建测试环境,用imp命令导入dmp文件时提示如下错误:问题描述:IMP-00038:无法转换为环境字符集句柄IMP-00000:未成功终止...
  • insert into A(a,b,c) (select a,b,c from B)2、假如A不存在select a,b,c into A from B3、假如需要跨数据库insert into ADB.[dbo].A(a,b,c) (select a,b,c from BDB.[dbo].B)扩展资料:SQL导入语句636f...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 246,704
精华内容 98,681
关键字:

怎么导入一个库的表