作业语句declare @sql as varchar(200)
set @sql = 'bulk insert phone9 from ''D:\' + convert(varchar(8),getdate(),112) + '.txt'''exec( @sql)从平台提取数据,为了区别文件,要给日期文件后面加其他字符,怎么只提取前面的日期,以实现动态链接。例如平台自动产生的数据名称为  20111101_15948.txt, 现只要文件名的前部分 20111101 ,这个语句该怎么修改?帮个忙啊,各位!

解决方案 »

  1.   

    declare @s varchar(20)
    set @s='20111101_15948.txt'
    select left(@s,charindex('_',@s)-1)
    /*
    --------------------
    20111101(1 行受影响)*/
      

  2.   

    set @sql = 'bulk insert phone9 from ''D:\' + convert(varchar(8),getdate(),112) + '.txt'''这里面怎么修改呢
      

  3.   

    http://topic.csdn.net/u/20111101/10/c612cdc1-e652-440a-861d-d58061ccc076.html?seed=2121238276&r=76271821这个是上午的问题,大家帮忙看一下啊
      

  4.   


    不行的,我运行,提示找不到20111101.txt这个文件,平台产生的文件名称格式是 日期_数字.txt
      

  5.   

    有规律,数据是一天更新一次, 是以日期+随机数字,格式就是这样的20111101_58615.txt
    20111102_87441.txt
    20111103_87116.txt
    ...上面的语句只要求读取前面8位就好了
      

  6.   


    有规律,数据是一天更新一次, 是以日期+随机数字,格式就是这样的20111101_58615.txt
    20111102_87441.txt
    20111103_87116.txt
    ...上面的语句只要求读取前面8位就好了
      

  7.   

    set @sql = 'bulk insert phone9 from ''D:\' +left(col,charindex('-',col)-1)+ '.txt'''
    --文本文件的名称存为一个表 列名是col
      

  8.   

    文件是后台运行自动产生的文件,我刚看了一下,文本命名的格式是: 日期+文本中记录的条数,例如20111101产生的文本有2万条记录,则文本的命名就是 20111101_20000.txt 
      

  9.   

    文件是后台运行自动产生的文件,我刚看了一下,文本命名的格式是: 日期+文本中记录的条数,例如20111101产生的文本有2万条记录,则文本的命名就是 20111101_20000.txt 
      

  10.   

    declare @sql as varchar(200)
    set @sql = 'bulk insert phone9 from ''D:\' + convert(varchar(8),getdate(),112) + '_20000.txt'''exec( @sql)
      

  11.   


    这是例如,怎么实现动态更新,比如11月02日有35000条记录  文件就是20111102_35000.txt
    11月03日 有40000条记录,文件就是 20111104_40000.txt
    ...
    以此类推啊,怎么用你得语句来实现呢?还有上午谢谢你得语句