我有一个网站,供商店的所有分支使用,它的作用是将客户购买记录到名为myTransactions.myTransactions表的表中,该表有一个名为SerialNumber的列.对于每次购买,我在事务表中创建一个记录并为其分配一个序列.执行此操作的存储过程在插入记录之前调用UDF函数以获取新的serialNumber.如下所示:
Create Procedure mytransaction_Insert
as begin
insert into myTransactions(column1,column2,column3,...SerialNumber)
values( Value1 ,Value2,Value3,...., getTransactionNSerialNumber())
end
Run Code Online (Sandbox Code Playgroud)
Create function getTransactionNSerialNumber
as
begin
RETURN isnull(SELECT TOP (1) SerialNumber FROM myTransactions READUNCOMMITTED
ORDER BY SerialNumber DESC),0) + 1
end
Run Code Online (Sandbox Code Playgroud)
该网站正在被不同商店中的许多用户同时使用,并且它创建了许多重复的serialNumbers(相同的SerialNumbers).所以我在事务中添加了一个具有ReadCommitted级别的Sql事务,我仍然有重复的事务编号.我将其更改为SERIALIZABLE以锁定资源,我不仅获得了重复的事务编号(!! HOW !!),而且我在同一存储过程调用之间也有零星的死锁.这就是我试过的:(省略了try catch块和回滚)
Create Procedure mytransaction_Insert
as begin
SET TRANSACTION ISOLATION LEVEL SERIALIZABLE
BEGIN TRASNACTION ins
insert into myTransactions(column1,column2,column3,...SerialNumber)
values( Value1 ,Value2 , Value3, ...., getTransactionNSerialNumber())
COMMIT TRANSACTION ins
SET TRANSACTION ISOLATION READCOMMITTED
end
Run Code Online (Sandbox Code Playgroud)
我甚至将获取序列号的函数直接复制到存储过程而不是UDF函数调用中,并且仍然有重复的serialNumbers.So,存储过程行如何创建类似c#lock(){}块的东西.顺便说一句,我必须使用相同的模式实现事务序列号,我不能将serialNumber更改为任何其他标识字段或任何其他.由于某些原因我需要在数据库中生成serialNumber而我不能将SerialNumber生成移动到应用程序级别.
对不起,但我已经在函数中没有READUNCOMMITTED尝试了这个,但我仍然得到重复的SerialNumbers.
至于IDENTITY列,我应该说这个应用程序将被需要不同SerialNumbers的其他公司使用,我们不能简单地将其更改为标识.
我正在寻找可以进行实验的可能的神经网络实现列表.可能需要一个小时到一周的时间才能写出来.
还有哪些其他可能性?
到目前为止这是列表:
一些链接到更多:
谁能告诉我什么是jQuery插件?我已经使用jQuery库来构建一些小的UI增强功能,但我不知道如何实现插件.有关如何入门的任何建议?
TIA
Errno::ENOENT: No such file or directory
即使文件存在,以下内容也会失败:
open('~/some_file')
Run Code Online (Sandbox Code Playgroud)
但是,我可以这样做:
open(File.expand_path('~/some_file'))
Run Code Online (Sandbox Code Playgroud)
我有两个问题:
open
将波形符处理为指向主目录?File.expand_path
吗?我只想上一个父节点,所以我可以在父节点内部执行.find.
从某种意义上说,我想找一个姐姐.
我试图找到一种方法来返回数组的父键的值.
例如,从下面的数组我想找出父元素的键,其中$ array ['id'] =="0002".父键是显而易见的,因为它在这里定义(它将是'产品'),但通常它是动态的,因此问题.但是'id'的'id'和值是已知的.
[0] => Array
(
[data] =>
[id] => 0000
[name] => Swirl
[categories] => Array
(
[0] => Array
(
[id] => 0001
[name] => Whirl
[products] => Array
(
[0] => Array
(
[id] => 0002
[filename] => 1.jpg
)
[1] => Array
(
[id] => 0003
[filename] => 2.jpg
)
)
)
)
)
Run Code Online (Sandbox Code Playgroud) 我想创建一个列表GridBagPanel.Constraints
.我在scala编程书中看到它有一个很酷的for-yield
结构,但我可能还没有理解它正常工作的方式,因为我的代码没有编译.这里是:
val d = for {
i <- 0 until 4
j <- 0 until 4
} yield {
c = new Constraints
c.gridx = j
c.gridy = i
}
Run Code Online (Sandbox Code Playgroud)
我想生成一个List[Constraints]
并为每个约束设置不同的x,y值以便稍后,当我稍后添加组件时,它们将在网格中.
我正在尝试使用C从蓝牙条码扫描器(KDC300)读取数据.这是我到目前为止的代码,程序成功建立了与扫描仪的蓝牙连接,但是当扫描条形码时,没有输入显示屏幕(最终将完成更多的数据,但我们必须先让它工作,对吧).
这是程序:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <unistd.h>
#include <fcntl.h>
#include <errno.h>
#include <termios.h>
#include <sys/ioctl.h>
int main (int argc, const char * argv[]) {
// define vars
int STOP = 0;
//char buf[255];
if(argv[1])
{
int fd = open("/dev/tty.KDC1", O_RDONLY);
if(fd == -1)
{
printf("%s", strcat("Unable to open /dev/tty.", argv[1]));
}
int res;
while(STOP == 0)
{
while((res = read(fd,buf,255)) == 0);
{
if(res > 0)
{
buf[res]=0;
printf("%s:%d\n", buf, res);
if(buf[sizeof(buf)]=='\n') break;
}
}
}
} …
Run Code Online (Sandbox Code Playgroud) 大约8个月前我学习了HTML和CSS,最近,大约2个月前我开始学习Python和Ruby.我发现理解并且能够将Python和Ruby付诸实践比使用HTML或CSS更加困难/耗时.
如何学习/理解HTML和CSS,以及能够使用它们不同于学习Python或Ruby等编程语言,并能够将它们付诸实践.
我想在MediaStore中为相册更新/插入新图像,但我无法让它工作..
这是我的代码:
public void updateAlbumImage(String path, int albumID) {
ContentValues values = new ContentValues();
values.put(MediaStore.Audio.Albums.ALBUM_ART, path);
int n = contentResolver.update(MediaStore.Audio.Albums.EXTERNAL_CONTENT_URI, values, MediaStore.Audio.Albums.ALBUM_ID + "=" + albumID, null);
Log.e(TAG, "updateAlbumImage(" + path + ", " + albumID + "): " + n);
}
Run Code Online (Sandbox Code Playgroud)
错误是:
03-24 03:09:46.323: ERROR/AndroidRuntime(5319): java.lang.UnsupportedOperationException: Unknown or unsupported URL: content://media/external/audio/albums
03-24 03:09:46.323: ERROR/AndroidRuntime(5319): at android.database.DatabaseUtils.readExceptionFromParcel(DatabaseUtils.java:131)
03-24 03:09:46.323: ERROR/AndroidRuntime(5319): at android.database.DatabaseUtils.readExceptionFromParcel(DatabaseUtils.java:111)
03-24 03:09:46.323: ERROR/AndroidRuntime(5319): at android.content.ContentProviderProxy.update(ContentProviderNative.java:405)
03-24 03:09:46.323: ERROR/AndroidRuntime(5319): at android.content.ContentResolver.update(ContentResolver.java:554)
03-24 03:09:46.323: ERROR/AndroidRuntime(5319): at com.liviu.app.smpp.managers.AudioManager.updateAlbumImage(AudioManager.java:563)
03-24 03:09:46.323: ERROR/AndroidRuntime(5319): …
Run Code Online (Sandbox Code Playgroud)