• matlab提取wind底层数据库操作


    首先需要安装navicat for SQL server 软件,

    为了实现Matlab 通过JDBC方式连接Sqlserver数据库, 需要安装Sqlserver JDBC驱动. 地址: 

    https://blog.csdn.net/yinxing408033943/article/details/7677769

    在navicat for SQL server进行试验, 登陆输入用户名,

    新建查询,一个简单的查询例子

     送上Navicat sql 的一些快捷键:

     ctrl + /: 注释

     ctrl + shift + /: 取消注释

     ctrl + l: 删除一行

    在matlab中实现如下: 新建一个函数getConn()

    %连接数据库获取数据
    function conn=getConn()
    % 数据库url
    databaseurl='jdbc:sqlserver://10.2.224.56:1433;database=newwind';  %根据需要自行修改
    % jdbc驱动
    driver='com.microsoft.sqlserver.jdbc.SQLServerDriver'; %driver
    % 登录名
    username='***';
    % 密码
    password='****';
    % 数据源名称
    databasename='newwind';
    % 得到与数据库的连接
    conn = database(databasename,username,password,driver,databaseurl);

    % % 如果未连接成功,抛出错误并显示原因
    % if ~isconnection(conn)
    %     error('与数据库''%s''连接失败:%s', databasename, conn.Message);
    % end

    接着, 新建一个脚本get_data

    tt1='''20160930'',''20161231''';
    code_sql='''000001.SZ'',''002808.SZ''';
    conn=getConn();
    sql=['select s.report_period ,s.s_info_windcode,a.s_fa_eps_basic,a.TOT_OPER_REV ',...
    ' from (select DISTINCT t.report_period,t.s_info_windcode from ASHAREINCOME t',... 
    [' where t.report_period IN(',tt1],...
    [')and t.s_info_windcode IN (',code_sql],...
    ')) s full join (SELECT  report_period,s_info_windcode,s_fa_eps_basic ,TOT_OPER_REV',...
    [' from ASHAREINCOME where report_period IN(',tt1],...
    [') and statement_type=''408001000''and s_info_windcode IN (',code_sql],...
    ')) a on  s.report_period=a.report_period and s.s_info_windcode=a.s_info_windcode',...
    ' order by s.s_info_windcode, s.report_period'];
    
    curs = exec(conn,sql);
    curs = fetch(curs);
    data_try= curs.Data; 
    size(data_try)

    得到结果

    !!!注意:wind账号一般由公司提供, 且只能在公司内部网才可以用.

    ----END---- HAVE A GOOD ONE! 以上为本人课余自学工具书/blog的笔记整理, 常有更新, 非100%原创!且读且学习。
  • 相关阅读:
    怎么在本地建立一个Maven 项目push到码云(https://git.oschina.net)
    SmartGit(试用期30后),个人继续使用的方法。
    小项目的总结
    Http 协议简略
    servlet 的基础学习
    安卓访问https错误,访问http可以,可能是nginx ssl证书配置有问题
    EF Code first主从表,删除更新从表
    MSSQL 生成唯一自增数据的办法
    select2插件placeholder不显示的问题
    FormData的Ajax提交注意事项
  • 原文地址:https://www.cnblogs.com/xuying-fall/p/8883360.html
Copyright © 2020-2023  润新知