我正在尝试将数据从另一个表插入到表中,并且这些表只有一个共同的列.问题是,TABLE1具有不接受空值的列,所以我不能将它们留空,我无法从TABLE2中获取它们.
我有TABLE1:id,col_1(非null),col_2(非null),col_3(非null)
和TABLE2:id,col_a,col_b,col_c
那么如何将TABLE2中的id插入到TABLE1中,并用"data1","data2","data3"等硬编码字符串填充col_1-3?
INSERT INTO TABLE1 (id) SELECT id FROM TABLE2 WHERE col_a = "something";
Run Code Online (Sandbox Code Playgroud)
将导致:
错误:"col_1"列中的空值违反了非空约束
我在这种格式的日志文件中有多行文本:
topic, this is the message part, with, occasional commas.
Run Code Online (Sandbox Code Playgroud)
如何从第一个逗号中拆分字符串,以便将主题和消息的其余部分放在两个不同的变量中?
我尝试过使用这种分割,但是当消息部分中有更多逗号时它不起作用.
[topic, message] = whole_message.split(",", 2);
Run Code Online (Sandbox Code Playgroud) 我有一个表单,我通过jQuery的加载函数动态添加新的输入和选择元素.有时加载的元素是空的,在这种情况下我想隐藏容器div,所以它不会破坏样式.
问题是,我似乎无法计算加载的元素,因此不知道它是否应该被隐藏.
例如我有这个:
<div id="param_container"></div>
Run Code Online (Sandbox Code Playgroud)
在一些下拉菜单更改我已绑定此功能:
alert($('#param_container').children().length);
// Returns and loads new element correctly. Can be empty.
$('#param_container').load('/get_params', {cat:category});
if ($('#param_container').children().length ) {
$('#param_container').css('display', 'block');
} else {
$('#param_container').css('display', 'none');
}
alert($('#param_container').children().length);
Run Code Online (Sandbox Code Playgroud)
即使添加了新的children元素,子节点的长度也始终为0.
有什么想法吗?
编辑:
我的解决方案
$('#param_container').load('/get_params', {cat:category}, function(response) {
if (response) {
$('#param_container').css('display', 'block');
} else {
$('#param_container').css('display', 'none');
}
});
Run Code Online (Sandbox Code Playgroud) 我一直在用jQuery ajax和$(this)发送表单.serialize到php和数据库,它运行得很好.现在我的情况是我不能使用序列化形式,而是从不同的输入字段生成一个字符串,而问题是它似乎在过程中丢失了一些URL实体.
例如"&phone = + 358123456789"结果显示"&phone = 358123456789"丢失了加号字符,并以空格结束数据库."&phone =%2B358123456789"工作正常.
因为可能有很多其他字符而不是"+"可能会丢失,所以我问是否有一个类似于php的htmlentities的函数会转换字符串?我已经尝试过javascript的escape()&unescape()但没有成功,并且干涉了jquery的.text()和.html(),但结果很糟糕.
编辑:
在函数调用中使用$ i + 1解决了问题.
我在多个foreaches中使用变量时遇到了麻烦.当我尝试在foreach中调用函数时,问题就会出现.每当我这样做时,主循环的迭代器值突然为零(无论它在哪一圈),但是当我注释掉函数调用时,迭代器值再次显示为它.
有人能指出我在以下示例中访问变量的正确方向:
这应该是应有的
for($i=0; $i<3; $i++)
{
echo $i; // 1, 2, 3
foreach($something as $value)
{
echo $i; // main loop's iterator value
foreach($value as $moreSomething)
{
echo $i; // main loop's iterator value
}
}
}
Run Code Online (Sandbox Code Playgroud)
但这不起作用,迭代器显示为0.
for($i=0; $i<3; $i++)
{
echo $i; // 1, 2, 3
foreach($something as $value)
{
echo $i; // 0
foreach($value as $moreSomething)
{
echo $i; // 0
$object->addStuff($i, $moreSomething); // i = 0, moreSomething is correct
} …Run Code Online (Sandbox Code Playgroud) 我是C#的新手,并试图创建一个MP3播放器.我正在使用sortedList作为播放列表(歌曲名称为Key,文件路径为Value),但我不确定如何随机化shuffle的列表顺序.
我试过这种方法,但它没有提出任何新订单,它从列表中删除了一首歌,嘿.
private SortedList Shuffle(SortedList oldSongList)
{
SortedList newSongList = new SortedList();
Random r = new Random();
int n = oldSongList.Count;
while (n > 1)
{
int rand = r.Next(n);
newSongList.Add(oldSongList.GetKey(rand), oldSongList.GetByIndex(rand));
oldSongList.RemoveAt(rand);
oldSongList.TrimToSize();
n--;
}
return newSongList;
}
Run Code Online (Sandbox Code Playgroud)
有什么想法吗?