日期:2014-05-18  浏览次数:20580 次

VBA+sql實際問題
本人剛接觸VBA+SQL有個實際問題求解,首先說下數據量大於40w行
要的結果就是EXCEL的表1 單元格B5輸入一個MAC號,將這個號寫入SQL 表A 列MAC1 
重點來了,1判斷被寫入的號不能為SQL表A列MAC1中有的號重號(如果有不寫入SQL,彈消息框)
  2被寫入的號必須為SQL表A列MAC2中的號(如果不為MAC2中的號不寫入SQL,彈消息框)
不要問我要附件了,這個沒法傳

------解决方案--------------------
在DB里建一个存储过程,输入参数是MAC地址,
SQL code

create proc checkmac
@mac varchar(50),@msg varchar(50) output
as
begin
  if exists(select 1 from 表A where MAC1=@mac)
  begin
    select @msg='表A.MAC1已存在此mac.'
    return
  end

  if not exists(select 1 from 表A where MAC2=@mac)
  begin
    select @msg='表A.MAC2不存在此mac.'
    return
  end

    insert into 表A(MAC1) values(@mac)
    select @msg='mac新增成功.'
end