我有一张表将校长连接到他们的角色.我遇到了需要为每个用户添加角色的情况.我有一份声明SELECT id FROM principals,其中列出了所有校长的名单.我想要创建的内容如下:
INSERT INTO role_principal(principal_id,role_id) VALUES(SELECT id FROM principals, '1');
因此,对于每个主体,它会创建一个role_id = 1的新记录.我的SQL经验非常少,所以我不知道我是否可以像我想的那样简单地执行此操作,或者在SQL中是否存在某种我可以使用的循环功能.
此外,这是一个mySQL数据库(如果这很重要)
我想以窗口形式向按钮添加自定义属性.目前我正在使用以下代码来创建我的逻辑.但我想为按钮控件创建一个枚举值.
btnPartyDetails.Text = "View";
{}
btnPartyDetails.Text = "Add";
{}
btnPartyDetails.Text = "Delete";
{}
btnPartyDetails.Text = "Edit";
{}
Run Code Online (Sandbox Code Playgroud)
我想基于这些值执行一些操作,我想为按钮创建一个自定义属性,以便我可以使用枚举而不是使用文本匹配.
btnPartyDetails.ActionType= ActionType.View;
{}
btnPartyDetails.ActionType= ActionType.Add;
{}
btnPartyDetails.ActionType= ActionType.Delete;
{}
btnPartyDetails.ActionType= ActionType.Edit;
{}
Run Code Online (Sandbox Code Playgroud)
我想做这样的事情,其中ActionType将是我的enum.
我还想根据值集创建自定义事件.我怎样才能做到这一点 ?
Java 6 API原始类型包装器具有成对的静态方法decode(String s)和valueOf(String s).它们都返回一个包装类类型的新对象,并且它们都没有注释为已弃用.有人知道他们之间的区别吗?例如:
Byte b1 = Byte.decode("10");
Run Code Online (Sandbox Code Playgroud)
和
Byte b2 = Byte.valueOf("10");
Run Code Online (Sandbox Code Playgroud) 我刚看到bash中的一些代码,我不太明白.作为新手bash脚本,我不知道发生了什么.
echo ${0##/*}
echo ${0}
Run Code Online (Sandbox Code Playgroud)
我没有看到这两个命令的输出有什么不同(打印脚本名称).这#只是一个评论吗?什么是/*.如果是评论,为什么它不会干扰关闭}括号?
谁能让我对这种语法有所了解?
您好我通过隧道从数据中心访问Oracle DB时遇到问题.
我们有一个非常标准的数据中心,一台机器可以从外部访问(我把它的IP放在/ etc/hosts文件中作为dc)和Oracle DB里面.我们在内部网络上的oracle数据库的IP地址是192.168.1.7
要创建隧道我正在使用命令:
ssh -L 1521:192.168.1.7:1521 root@dc
Run Code Online (Sandbox Code Playgroud)
当然它可以工作(有时我也添加一些debug -vv来查看是否有任何东西通过).
现在困难的部分 - 连接到Oracle.我安装了instantclient 11.2.我的tnsnames.ora看起来像那样:
testdb =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = dbname)
)
)
Run Code Online (Sandbox Code Playgroud)
当我尝试使用命令连接时:
./sqlplus username/pass@testdb
Run Code Online (Sandbox Code Playgroud)
它开始通过隧道连接(我在ssh调试中看到它),但它失败告诉:
./sqlplus username/pass@testdb
SQL*Plus: Release 11.2.0.1.0 Production on Wed Jan 13 20:46:07 2010
Copyright (c) 1982, 2009, Oracle. All rights reserved.
ERROR:
ORA-12541: TNS:no listener
Enter user-name:
Run Code Online (Sandbox Code Playgroud)
当我在内网上尝试执行相同的命令时,它可以工作(显然唯一的区别是在tnsnames.ora主机中我们有192.168.1.7而不是本地主机).
我也尝试使用简单的命令行:
./sqlplus username/pass@//localhost:1521/testdb
Run Code Online (Sandbox Code Playgroud)
或者
./sqlplus username/pass@//localhost:1521/testdb
Run Code Online (Sandbox Code Playgroud)
但没有任何帮助:)
我将不胜感激任何帮助或建议.我错过了一些ssh标志以使其成为可能吗?
可能是日志文件:
*********************************************************************** …Run Code Online (Sandbox Code Playgroud) 好的,我有以下代码:
use strict;
my @ar = (1, 2, 3);
foreach my $a (@ar)
{
$a = $a + 1;
}
print join ", ", @ar;
Run Code Online (Sandbox Code Playgroud)
和输出?
2,3,4
有没有搞错?为什么这样做?这总是会发生吗?是$ a不是一个真正的局部变量?他们在想什么?
根据许多来源,在php.ini中应该禁用register_globals(全局变量). 我应该在我的代码中编写define()并在禁用全局变量时使用常量吗?那些甚至相关吗?
我有一个人口稠密的arraylist,我想清除和重用.如果我清除它会释放以前使用过的内存吗?
我还应该提一下,arraylist是一个私有的只读字段,在我第一次使用arraylist之后仍然有许多活跃的工作要做.所以我不能等到课后超出范围的垃圾收集.
Clear方法足够快吗?或者我应该销毁并创建一个新的arraylist?
问题更新:
如果我有这样的字段声明(感谢Jon的建议)
/// <summary>
/// Collection of tasks.
/// </summary>
private List<Task> tasks = new List<Task>();
Run Code Online (Sandbox Code Playgroud)
然后我填充它....(严重)
现在,如果不是清除和修剪,我可以打电话:
tasks = new List<Task>();
Run Code Online (Sandbox Code Playgroud)
这会被推荐吗?
尝试持久化对象时出现以下错误:
java.lang.IllegalStateException: During synchronization a new object was found through a relationship that was not marked cascade PERSIST
有没有简单的方法来判断哪个关系有问题对象?
持久化对象可能有很多关系和试错,或通过淘汰工作找到,但我想知道是否有更简单快捷的方法来识别问题关系对象.
更新:我定期遇到这个问题,我一直能够找到问题的根源,或者已经能够重新排序操作以解决问题,但我的问题是需要花费大量时间来查找违规的对象.
我的解决方案总是通过反复试验找到.我有时会在几分钟内找到解决方案,但有时需要数小时.我的问题是:是否有一种更简单的方法可以找到导致问题的可能很多关系中的哪一种.例外只声称通过"关系"找到了"新对象",这无助于我找到哪个对象或哪个关系.是否有日志或方法告诉系统提供更具体的错误?
我目前正在开发一个使用http请求获取图像的Android应用程序.如果我可以缓存这些图像以改善性能和带宽使用,那将会非常容易.
我在Android参考中遇到过CacheManager类,但我真的不知道如何使用它,或者它真正做到了什么.
我已经完成了这个例子,但我需要一些帮助来理解它:
/core/java/android/webkit/gears/ApacheHttpRequestAndroid.java
此外,参考说明:
"网络请求被提供给该组件,如果它们无法通过缓存解析,则HTTP标头将视情况附加到内容重新验证请求中."
我不确定这意味着什么或它对我有什么用处,因为CacheManager的getCacheFile只接受String URL和包含标题的Map.不确定所提到的附件意味着什么.
一个解释或一个简单的代码示例真的会做我的一天.谢谢!
更新
这就是我现在所拥有的.我显然做错了,只是不知道在哪里.
public static Bitmap getRemoteImage(String imageUrl) {
URL aURL = null;
URLConnection conn = null;
Bitmap bmp = null;
CacheResult cache_result = CacheManager.getCacheFile(imageUrl, new HashMap());
if (cache_result == null) {
try {
aURL = new URL(imageUrl);
conn = aURL.openConnection();
conn.connect();
InputStream is = conn.getInputStream();
cache_result = new CacheManager.CacheResult();
copyStream(is, cache_result.getOutputStream());
CacheManager.saveCacheFile(imageUrl, cache_result);
} catch (Exception e) {
return null;
}
}
bmp = BitmapFactory.decodeStream(cache_result.getInputStream());
return bmp;
}