记录生活和工作的点滴
0

单品转柜错误(购销处理)

begin tran
--删除转柜记帐单
delete unaccsheet0 where sheettype in (2371,2372) and venderid=3210 and shopid='A002'
--更新商品柜组属性
update countergoods set counterid=2501,countgroupid=2501 where goodsid=86075 and shopid='A002'
--更新销售柜组
update salegoods201201 set countgroupid=2501 where goodsid=86075 and shopid='A002' and sdate>='20120110'
--更新成本柜组
update salecost201201 set countgroupid=2501 where goodsid=86075 and shopid='A002' and sdate>='20120110'
 
update rpt_d_shopsstock set countgroupid=2501  where goodsid=86075 and shopid='A002' and sdate>='20120110'
 
commit

0

条码第十三位(校验位)计算

 

校验码的计算方法 代码位置序号 代码位置序号是指包括校验码在内的,由右至左的顺序号(校验码的代码位置序号为1)。
 
计算步骤 校验码的计算步骤如下:
a.从代码位置序号2开始,所有偶数位的数字代码求和。
b.将步骤a的和乘以3。
c.从代码位置序号3开始,所有奇数位的数字代码求和。
d.将步骤b与步骤c的结果相加。
e.用大于或等于步骤d所得结果且为10最小整数倍的数减去步骤d所得结果,其差即为所求校验码的值。
示例:代码690123456789X1校验码的计算见表B.1。
表1 校验码的计算方法 步 骤
举 例 说 明
1.自右向左顺序编号 位置序号 13 12 11 10 9 8 7 6 5 4 3 2 1 代码 6 9 0 1 2 3 4 5 6 7 8 9 X
2.从序号2开始求出偶数位上数字之和① 9+7+5+3+1+9=34 ①
3. ①*3=② 34×3=102 ②
4.从序号3开始求出奇数位上数字之和③ 8+6+4+2+0+6=26 ③
5. ②+③=④ 102+26=128 ④
6.用大于或等于结果④且为10最小整数倍的数减去④,其差即为所求校验码的值 130-128=2 校验码X1=2 
 
 
select *,
right((10-
((0+SUBSTRING(plu_no,1,1)+SUBSTRING(plu_no,3,1)+SUBSTRING(plu_no,5,1)+SUBSTRING(plu_no,7,1)+SUBSTRING(plu_no,9,1)+SUBSTRING(plu_no,11,1))+
(0+SUBSTRING(plu_no,2,1)+SUBSTRING(plu_no,4,1)+SUBSTRING(plu_no,6,1)+SUBSTRING(plu_no,8,1)+SUBSTRING(plu_no,10,1)+SUBSTRING(plu_no,12,1))*3)%10),1)
 from ba_multi_plu
0

批处理(bat)实现SQLServer数据库备份与还原

 

--1.数据库备份脚本sqlserverbackup.sql

 

-- SQLServer2000数据库系统清理用户数据库日志和备份用户数据库数据脚本

 

declare@dumpfile varchar(50)

declare@msg varchar(70)

   select @dumpfile = 'd:\backup\north' + datename(dw,getdate())+'.bak'

   select @msg=convert(char(26),getdate(),9)+'-----正在清理日志......'

   print @msg

backuptran northwind with truncate_only

if(@@ERROR <> 0 )

begin

   select @msg=convert(char(26),getdate(),9)+'-----清理日志失败或出现异常......'

   print @msg

end

else

begin

   select @msg=convert(char(26),getdate(),9)+'-----清理日志完毕......'

   print @msg

end

   select @msg=convert(char(26),getdate(),9)+'-----开始备份northwind数据库.....'

   print @msg

backupdatabase northwind to disk=@dumpfile

if(@@ERROR <> 0 )

begin

   select @msg=convert(char(26),getdate(),9)+'-----备份数据失败或出现异常'

   print @msg

end

else

begin

   select @msg=convert(char(26),getdate(),9)+'-----数据库备份完毕'

   print @msg

end

 

 

@net start "mssqlserver"

@isql -Usa -Psa -i d:\backup\sqlserverbackup.sql -o d:\backup\sqlserverbackup.out

@echo ……正在备份中……

@pause

 

--2.数据库还原脚本sqlserverrestore.sql

 

 

declare @dumpfile varchar(50)
declare @msg varchar(70)
select @dumpfile = 'e:\myshopbak01\myshoppos.bak'
select @msg=convert(char(26),getdate(),9)
print @msg
restore database myshoppos from disk=@dumpfile
if (@@ERROR <> 0 )
begin
select @msg=convert(char(26),getdate(),9)+'-----还原数据失败或出现异常'
print @msg
end
else
begin
select @msg=convert(char(26),getdate(),9)+'-----数据库还原完毕'
print @msg
end

 

--将下面的脚本保存为: 备份数据库.bat

 

@net start "mssqlserver"

@isql -Usa -Padmin -i d:\backup\sqlserverbackup.sql -o d:\backup\sqlserverbackup.out

@echo ……正在备份中……

@pause

 

--将下面的脚本保存为:还原数据库.bat

 

@echo ******开始还原数据库*****

@net start "mssqlserver"

@isql -Usa -Psa -i d:\backup\sqlserverrestore.sql -o d:\backup\sqlserverrestore.out

@pause

0

bat批处理 SQL2000数据库附加、分离、查询、备份、还原、删除小程序

 

::▇AAA代表在SQL中看到的[要分离、附加的数据库名]
::▇BBB代表[要附加的数据库的位置]            CCC代表[要附加的数据库文件名]            DDD代表[要附加的数据库日志文件名]
::▇EEE代表[指定的数据库实例用户名]          FFF代表[指定的数据库实例用户的密码] (这里指定的实例是"127.0.0.1"或"Local"或"."即指本机SQL自带的实例)
::▇GGG代表[要备份的数据库名]                HHH代表[数据库备份的路径]                III代表[备份后的名字]
::▇JJJ代表[用于还原的数据库备份文件所在的路径+文件名]   KKK代表[还原后的数据库文件所存放的路径]   LLL代表[还原数据库后在SQL中所显示的名称]
::▇MMM代表[要删除的数据库名]
::#**********************************************************************#
::★1、【分离】请编辑AAA
set AAA=ForestFireControl_StandingBook
::----------------------------------------
::★2、【附加】请编辑AAA、BBB、CCC、DDD
set BBB=C:\
set CCC=ForestFireControl_StandingBook.mdf
set DDD=ForestFireControl_StandingBook_log.ldf
::----------------------------------------
::★设定数据库的登入【账号和密码】请编辑EEE、FFF
set EEE=sa
set FFF=sa
::----------------------------------------
::★4、【备份】请编辑GGG、HHH、III
set GGG=ForestFireControl_StandingBook
set HHH=C:\
set III=备份的数据库2.bak
::----------------------------------------
::★5、【还原】请编辑JJJ、KKK、LLL
set JJJ=C:\备份的数据库2.bak
set KKK=C:\
set LLL=ForestFireControl_StandingBook
::----------------------------------------
::★6、【删除】请编辑MMM
set MMM=ForestFireControl_StandingBook
::#**********************************************************************#
REM 选择菜单

Echo ★★★注意:本文件最好不要放在路径名中含有空格的位置上运行(如桌面等位置)    
Echo #**********************************************************************#
Echo              选项如下(可用记事本打开对相应参数重新编辑)
Echo #**********************************************************************#
Echo.
Echo   [1]分离%AAA%数据库
Echo.       
Echo   [2]附加%BBB%下的%CCC%数据库文件   
Echo.
Echo   [3]查看数据库中已存在的非系统表
Echo.
Echo   [4]备份数据库%GGG%到%HHH%%III%
Echo.
Echo   [5]还原"%JJJ%"数据库备份文件为%LLL%.mdf且存放到%KKK%下
Echo.
Echo   [6]彻底删除数据库%MMM%
Echo.
Echo       退出请按其他键
Echo.
Echo #**********************************************************************#
Echo 选择后请按回车进行确认
Echo.
set /P CHS=请选择: [1],[2],[3],[4],[6]?

if /I "%CHS%"=="1" goto 1111
if /I "%CHS%"=="2" goto 2222
if /I "%CHS%"=="3" goto 3333
if /I "%CHS%"=="4" goto 4444
if /I "%CHS%"=="5" goto 5555
if /I "%CHS%"=="6" goto 6666
goto zzzz
::============================================================================
:1111
cls
set XXX=C:\121.sql
Echo 正在清理与此数据库的连接,请等待……
::将下面的这三句语句写到.sql文件里面,再通过下面的第四条语句调用执行这个.sql文件的内容,第五条语句是删除这个.sql文件,第六条语句开始分离
>"%XXX%" Echo use   master                                                                                                   
>>"%XXX%" Echo declare hcforeach cursor global for select 'kill '+rtrim(spid) from sysprocesses where dbid=db_id(N'%AAA%')     
>>"%XXX%" Echo exec   sp_msforeach_worker   '?'                                                                                
Osql -U"%EEE%" -P"%FFF%" -i %XXX%
del %XXX%
OSQL -E -Q "SP_DETACH_DB %AAA%"
::其他例子: osql -U"sa" -P"sa" -S"127.0.0.1" -Q "sp_detach_db '库名'"
Echo.
Echo.
Echo 分离SQL中名为%AAA%的数据库成功
Echo.
set CHS=0
pause
cls
goto dosmenu
::============================================================================
:2222
cls
OSQL -U"%EEE%" -P"%FFF%" -S"127.0.0.1" -Q "sp_attach_db '%AAA%','%BBB%\%CCC%','%BBB%\%DDD%'"
Echo.
Echo.
Echo 附加%BBB%下的数据库文件%CCC%到SQL中成功
Echo.
::★★★ OSQL -U"sa" -P"sa" -S"127.0.0.1" -Q "sp_attach_db '库名','路径\数据文件名','路径\日志文件名'"
set CHS=0
pause
cls
goto dosmenu
::============================================================================
:3333
cls
OSQL -E -Q "SELECT NAME,FILENAME FROM MASTER..SYSDATABASES WHERE name<>'master' and name<>'tempdb' and name<>'model' and name<>'msdb' "
::★★★上面语句中FROM后面的MASTER..SYSDATABASES表示系统自带的MASTER数据库中的SYSDATABASES表
set CHS=0
pause
cls
goto dosmenu
::============================================================================
:4444
cls
del %HHH%%III%
cls
::加上述的del %HHH%%III%语句的作用是为了防止在路径%III%下已经存在同名的数据库备份文件,而导致文件叠加到一块,这也算是SQL2000的一个Bug
Echo 正在备份数据库,在出现成功的提示之前请您耐心等待……
Echo.
Echo.
OSQL -U"%EEE%" -P"%FFF%" -S"127.0.0.1" -d"%GGG%"   -Q "Backup DataBase %GGG% to disk = '%HHH%%III%'"
::★★★OSQL -U"sa" -P"sa" -S"127.0.0.1" -d"CircleImage" -Q "Backup DataBase CircleImage to disk = 'c:\111.db'"
Echo.
Echo.
Echo 恭喜!恭喜!已成功将SQL中的数据库"%GGG%"备份成%HHH%下文件名为"%III%"的文件
Echo.
set CHS=0
pause
cls
goto dosmenu
::============================================================================
:5555
cls
Echo 数据库文件正在还原,在出现还原成功的提示前请您耐心等待……
set XXX=C:\123.sql

>"%XXX%"   Echo DECLARE @bakFile nvarchar(1024);                               
>>"%XXX%" Echo SET @bakFile = N'%JJJ%';                                      
>>"%XXX%" Echo.                               
>>"%XXX%" Echo DECLARE @restorePath nvarchar(1024);                           
>>"%XXX%" Echo SET @restorePath = N'%KKK%';                                  
>>"%XXX%" Echo.
>>"%XXX%" Echo DECLARE @dbname nvarchar(128);                                 
>>"%XXX%" Echo SET @dbname = N'%LLL%';                                       
>>"%XXX%" Echo.
>>"%XXX%" Echo DECLARE @filename nvarchar(128);                              
>>"%XXX%" Echo SET @filename = @dbname;                                      
>>"%XXX%" Echo.
>>"%XXX%" Echo CREATE TABLE #LogicalFileBak(LogicalName nvarchar(128),        
>>"%XXX%" Echo                                 PhysicalName nvarchar(260),       
>>"%XXX%" Echo                                 Type char(1),                     
>>"%XXX%" Echo                                 FileGroupName nvarchar(128),      
>>"%XXX%" Echo                                 [Size] numeric(20,0),             
>>"%XXX%" Echo                                 [MaxSize] numeric(20,0) );       
>>"%XXX%" Echo.
>>"%XXX%" Echo   INSERT #LogicalFileBak EXEC('RESTORE FILELISTONLY FROM DISK = ''' + @bakFile + '''');              
>>"%XXX%" Echo.
>>"%XXX%" Echo   DECLARE cur CURSOR FOR SELECT LogicalName,Type,FileGroupName FROM #LogicalFileBak;                
>>"%XXX%" Echo   DECLARE @LogicalName nvarchar(128),@Type char(1),@FileGroupName nvarchar(128);                     
>>"%XXX%" Echo.
>>"%XXX%" Echo   DECLARE @cmd nvarchar(4000);                                                                       
>>"%XXX%" Echo   SET @cmd = 'RESTORE DATABASE [' + @dbname + '] FROM DISK = ''' + @bakFile + '''';                  
>>"%XXX%" Echo   SET @cmd = @cmd + ' WITH REPLACE'                                                                  
>>"%XXX%" Echo.
>>"%XXX%" Echo   OPEN cur;                                                                                         
>>"%XXX%" Echo   FETCH NEXT FROM cur INTO @LogicalName,@Type,@FileGroupName;                                       
>>"%XXX%" Echo   WHILE @@FETCH_STATUS = 0                                                                           
>>"%XXX%" Echo        BEGIN                                                                                         
>>"%XXX%" Echo             SET @cmd = @cmd + ',MOVE ''' + @LogicalName + ''' TO ''' + @restorePath                   
>>"%XXX%" Echo                             + @filename + CASE WHEN @Type = 'D' AND @FileGroupName = 'PRIMARY'        
>>"%XXX%" Echo                                                    THEN '.mdf'                                        
>>"%XXX%" Echo                                                WHEN @Type = 'D' AND @FileGroupName ^<^> 'PRIMARY'     
>>"%XXX%" Echo                                                    THEN '.ndf'                                       
>>"%XXX%" Echo                                                ELSE '_log.ldf'                                      
>>"%XXX%" Echo                                                END + ''''                                         
>>"%XXX%" Echo             FETCH NEXT FROM cur INTO @LogicalName,@Type,@FileGroupName;                            
>>"%XXX%" Echo        END                                                                                           
>>"%XXX%" Echo   CLOSE cur;                                                                                      
>>"%XXX%" Echo   DEALLOCATE cur;                                                                                   
>>"%XXX%" Echo.
>>"%XXX%" Echo   EXEC(@cmd);                                                                                        
>>"%XXX%" Echo.
>>"%XXX%" Echo   DROP TABLE #LogicalFileBak;                                                                        

Osql -U"%EEE%" -P"%FFF%" -i %XXX%
del %XXX%

Echo.
Echo.
Echo 恭喜!已成功将"%JJJ%"还原成%LLL%,且还原后的文件存放在%KKK%下
Echo.
pause
set CHS=0
cls
goto dosmenu
::============================================================================
:6666
Echo 真的要删除吗?删除后将不可恢复
Echo.
set /P QR=确定删除请按y,放弃删除请按其他键,请选择?
cls
if /I "%QR%"=="y" (
OSQL -U"%EEE%" -P"%FFF%" -S"127.0.0.1" -Q "Drop DataBase %MMM%"
::其他例子:OSQL -U"sa" -P"sa" -S"127.0.0.1" -Q "Drop DataBase 库名"
Echo.
Echo 删除SQL中名为%AAA%的数据库及源文件成功
Echo.
pause
)
set QR=0
set CHS=0
cls
goto dosmenu
::============================================================================
:zzzz
REM 退出
exit


::**************************************************************************************************
::**************************************************************************************************
::**************************************************************************************************
::分离数据库的命令:Sp_detach_db 数据库名
::  连接数据库的命令:Sp_attach_db或者sp_attach_single_file_db
::  sp_attach_db [@dbname =] 'dbname', [@filename1 =] 'filename_n' [,...16]
::  sp_attach_single_file_db [@dbname =] 'dbname', [@physname =] 'physical_name'
::
::使用此方法可以正确附加和分离SQL Sever7.0和SQL Server 2000的数据库文件,要点是备份的时候一定要将mdf和ldf两个文件都备份下来,mdf文件是数据库数据文件,ldf是日志文件。


::OSQL -? 显示帮助(具体如下所示)
::用法: osql [-U 登录 ID] [-P 密码]
::[-S 服务器] [-H 主机名] [-E 可信连接]
::[-d 使用数据库名称] [-l 登录超时值] [-t 查询超时值]
::[-h 标题] [-s 列分隔符] [-w 列宽]
::[-a 数据包大小] [-e 回显输入] [-I 允许带引号的标识符]
::[-L 列出服务器] [-c 命令结束] [-D ODBC DSN 名称]
::[-q "命令行查询"] [-Q "命令行查询" 并退出]
::[-n 删除编号方式] [-m 错误级别]
::[-r 发送到 stderr 的消息] [-V 严重级别]
::[-i 输入文件] [-o 输出文件]
::[-p 打印统计信息] [-b 出错时中止批处理]


::★★★可通过下面的语句查询已有备份库的逻辑文件名,以用于 还原数据库语句操作 中的操作
::OSQL -U"sa" -P"sa" -S"127.0.0.1"   -Q "restore filelistonly from disk ='C:\备份的数据库1'"
::
::OSQL -U"sa" -P"sa" -S"127.0.0.1"   -Q "restore filelistonly from disk ='C:\备份的数据库1'" >>C:\1234.txt

::=============================================================================================
::★★★★★ 还原数据库语句操作
::其中的 数据库的逻辑文件名 和 数据库日志的逻辑文件名 是通过上述的语句来查询的

::格式说明:
::osql -E -d CircleImage -Q "restore database 备份后SQL中看到的数据库名 from disk='用于还原的备份文件的路径+文件名' with move '数据库的逻辑文件名' TO '备份后的路径+实际文件名', MOVE '数据库日志的逻辑文件名' TO '备份后的路径+实际文件名'"

::实例:
::OSQL -U"sa" -P"sa" -S"127.0.0.1" -Q "restore database CircleImage from disk='C:\CircleImage备份' with move 'CircleImage_Data' to 'c:\CircleImage.mdf',move ::'CircleImage_Log' to 'c:\CircleImage_log.ldf'"

::上述这么长的语句中切不可出现回车等换行符,且参数的大小写是不可随意更改的

::=============================================================================================
::★★ 更改数据库备份文件逻辑名的方法:

::alter database 数据库名 modify file (name=逻辑名,newname=新逻辑名)

::事实上,上面的语句是更改了sysfiles和sysfiles1系统表中的name字段。

0

还是比较迷茫

今天是27号了,不过还是照样比较迷茫,提交上来的商品是已经加得差不多,外面的三个供应商:崧厦伞厂\宁波内衣厂\朱总的数码产品,东西都还没有到位.不过挫总的东西已经看了一下,说实在的也没有什么价格优势.

销售方面已经有第一笔生意了,卖了个榨菜礼盒,21块钱.查询了一下,这个东西全网只有我们有,再次验证了东西要有唯一性和低价这个原则

下面想做的事:第一保持淘宝现有状态,继续刷人气

第二:浙东商城一百店跟他们商量,争取尽快开出来,才一份人气争取的方案

第三:小家电阿里巴巴上的销售还是有希望的,再争取一下让他们把商品资料\价格\最低成交价拿一份过来

 

暂时先这么做着吧!真正的方向还是应该是网上商城,但怎么要去争取货源?怎么样宣传才好?这些都学没有想好,要怎么做呢??????????真的不顾一切地去做吗?????????很矛盾,也没有人告诉我,只有一片气馁声和反对声,或者是无谓的激动之人,方向在哪里,路在哪里,最主要的还是投资的钱在哪里,支持的力度有多大!!!!!!

 

最后还是那句话,电子商务并不是低投入的生意,想低投入做电子商务肯定是不行的,我该不该继续去说服呢?

0

十几天来的工作感想

到今天为止,到团购部已经十几天了,这十几天真的不知道做得对还是错,一直是这样。

这样做电子商务,我总是感觉前面是一条死胡同。前天周一,我跟陈经理说了,陈经理跟我说,你越是想这个东西不行,肯定越不行。但真的是这样吗?我认为我是很理智在想问题。我们现在在做的不是真正的电子商务,我们现在做的仅仅是在淘宝上开了一个店铺。这样的店铺在淘宝上有1400多万,这1400多万中,有一定销量的在万家左右。相对于这万家店铺,我们有没有可比性?已经完全被我否认掉了。第一我们的商品完全没有价格优势,在网上购物大部分是因为价格低;第二我们的商品没有任何特色,不为价格部分的网购者看中商品品牌在当地没有或者网店的商品很有特色能吸引人;既没有价格优势又没有特点的商品,人家凭什么来买东西,因为你叫浙江上百,谁认识你?

我们总是看到别人光辉的一面,谁做了多少生意了,但是人家做的是什么并没有研究,只是一味地认为人家做得好,我们肯定也做得好。有一个人跟我说,我们这么大的 公司就算一人买一件也能卖3000多,问题是有谁来买你的帐?

我已经有点绝望了,已经看不太清前方的路在哪里了,如果还是这么一个淘宝店做下去,肯定是死路一条了。

我的思路:做上虞市场,从亏本生意开始做,电子商务没有亏本就不可能会有赢利,当然亏本并不是绝对会有赢利!

唉,我的想法对不对,谁来告诉我!

0

7月5日感想

1号到团购部报到,到现在,目标还不明确,是自己能力不够还是什么,现在自己也不敢想了。唉,尽快想好事情吧!

0

2011.3.2

待处理:顾客卡丢失的问题汇报与请示,卢总

Processed in 0.1448 second(s), 7 queries