我正在尝试使用SchemaSpy创建一个sqlite转储.我启动并运行了SchemaSpy,并能够正确转储MySQL数据库.
现在我有一个.sqlite文件(来自iOS应用程序)和一个来自Christian Werner的sqlite驱动程序(http://www.ch-werner.de/javasqlite/overview-summary.html).这里的一个例子解释了如何使用它,但说实话 - 我不明白该怎么做.
是否有人知道如何在Windows上使用SchemaSpy?但是,我没有必要使用GUI工具.
大家好,我真的是android中的新蜂,为此我很困惑要与数据库一起玩。我要指出的是,实际上,我正在尝试将表单详细信息保存在数据库中,但是在这里我不知道我是否必须为此安装数据库,或者在安装android SDK时已安装了该数据库...请帮助非常感谢。
我的应用程序(像大多数人一样)将利用许多远程服务......所以当用户验证自己时,我需要存储他们的用户名和密码(或某种标志),这样他们就不需要对所有人进行身份验证该应用程序.
存储此用户数据的最佳/最快/最简单的位置在哪里?
我真的很难在我的应用程序中使用SqlLite;
我已经设置了一个从SQLiteOpenHelper扩展的数据库助手类
public class DatabaseHelper extends SQLiteOpenHelper {
Run Code Online (Sandbox Code Playgroud)
在OnCreate中我创建了大约6个表:
public void onCreate(SQLiteDatabase db) {
db.execSQL("CREATE TABLE myTestTable (Id INTEGER PRIMARY KEY , "
+ "info TEXT," +
+ "TopLeft TEXT")); <-- example insert
}
Run Code Online (Sandbox Code Playgroud)
当我的应用程序启动时,我正在解析一些xml并将数据输入到表中,我已经检查了数据库,所有数据都在那里,我的表格正确创建.
当我去调用数据时,它就消失了!我在dbhelper类和每个活动中有很多不同的查询;我重新启动了类,这样我就可以在类中获取我的函数.
我认为这不是这样做的方式,因为它再次运行我的oncreate并擦除我的所有表(或者至少这是在我尝试从它调用数据并且它为空时我检查数据库时它似乎正在做的时候!
我的印象是oncreate只运行了一次,但显然并非如此,因为它似乎每次都在重新创建我的数据库并擦除我的数据!
你想在哪里初始化dbhelper类,你如何停止重新创建表?即使应用程序关闭,我也需要数据保持不变!
我糊涂了!
如果这没有意义,请询问具体问题我如何澄清它!
UPDATE
我发现我可以添加
CREATE TABLE IF NOT EXISTS
Run Code Online (Sandbox Code Playgroud)
这会阻止它重新创建表格,但是每次调用oncreate似乎都没有.
以下查询适用于本地但不适用于生产:(生产是 heroku 正在运行 postgreSQL,而在本地我正在运行 sqllite 数据库)
红宝石
Tutor.joins(:expertises).where(:expertises => {:subject_id => [2,4]}).group("tutors.id").having("COUNT(*) = 2")
Run Code Online (Sandbox Code Playgroud)
SQL
SELECT "tutors".* FROM "tutors" INNER JOIN "expertises" ON "expertises"."tutor_id" = "tutors"."id" WHERE ("expertises"."subject_id" IN (9)) GROUP BY tutors.id HAVING COUNT(*) = 1 ORDER BY rank DESC)
Run Code Online (Sandbox Code Playgroud)
我在生产 ActiveRecord::StatementInvalid (PGError: ERROR: column "tutors.fname" must出现在 GROUP BY 子句中或在聚合函数中使用时收到以下错误
我的表中有以下值
id :integer not null, primary key
fname :string(255)
lname :string(255)
school :string(255)
major :string(255)
year :string(255)
bio :text
vid :string(255)
price :integer
phone :string(255)
skype :string(255)
address :text …Run Code Online (Sandbox Code Playgroud) 让我解释'哪个'函数的作用:
从GNU-R帮助:
哪些指数是真的?
给出逻辑对象的"TRUE"索引,允许数组索引.
或显示一些代码:(GNU-R开始用1计数索引)
> x <- c(1,2,3,1,3,5);
> which(x == 1);
[1] 1 4
> which(x == 3);
[1] 3 5
> ll <- c(TRUE,FALSE,TRUE,NA,FALSE,FALSE,TRUE);
> which(ll);
[1] 1 3 7
Run Code Online (Sandbox Code Playgroud)
有没有人知道C/C++中的类似功能?
谢谢你的帮助
rinni
我想从MySQL表中检索一组记录作为数组.
到目前为止,我能够将每一行检索为关联数组.但是我想要一个数组中的所有行,因为我必须在jQuery中访问该完整对象才能显示它们.
这是我到目前为止所做的.这是我的.php脚本来检索数据
//select query
$result = mysql_query("SELECT * FROM student",$con) or die (mysql_error());
$numRows = mysql_num_rows($result); //to iterate the for loop
//passing as an associative array
for ($count = 0; $count < $numRows; $count++){
$row = mysql_fetch_array($result, MYSQL_ASSOC);
echo json_encode($row);
}
Run Code Online (Sandbox Code Playgroud)
这就是我目前得到的
{"StuId":"1","fName":"Saman","lName":"Kumara","age":"14","grade":"A"}
{"StuId":"2","fName":"Marry","lName":"Vass","age":"12","grade":"B"}
{"StuId":"3","fName":"Navjoth","lName":"Bogal","age":"32","grade":"A"}
{"StuId":"4","fName":"Jassu","lName":"Singh","age":"22","grade":"E"}
Run Code Online (Sandbox Code Playgroud)
但我希望这个结果集如下.
[
{"TEST1":45,"TEST2":23,"TEST3":"DATA1"},
{"TEST1":46,"TEST2":24,"TEST3":"DATA2"},
{"TEST1":47,"TEST2":25,"TEST3":"DATA3"}
]
Run Code Online (Sandbox Code Playgroud)
我这样做是寻求帮助的.提前致谢.
我刚刚注意到,当我在Eclipse中进行字符串比较时,当我将一个阿拉伯字符放入一行时,它完全抛弃了Eclipse.如何在一行代码中交换英语和阿拉伯语?
**编辑**
好了,我的问题已经在这里迁移了,我想一些代码是有序的.我试图在Java中执行以下操作:
Character c1 = '?';
Map<Character, Double> arabicRootMap = new HashMap<Character, Double>();
arabicRootMap.put(c1, 5.0);
Run Code Online (Sandbox Code Playgroud)
完全相同的事情发生在这里,就像在Eclipse中,而不是将c1放入我的地图,我想直接将我的阿拉伯字符放入地图,但我的从左到右是顺序部分打破和新的混合光标导航这条线很疯狂.如您所见,我通过预先定义一个字符来间接解决问题.
抱歉,我无法为以下算法提出算法或问题的名称.我将陈述问题,然后我尝试过,也许有人可以指出我正确的方向.
想象一下,你有一袋物品(无序,重复允许).在实践中,袋子可以包含2-20个物品,以防这种放松有帮助.
目标是找到最小长度链(如果我们有不同的链概念,有序链接列表),其中包含任何顺序的包中的所有项目.
链包含一个开始标记(不存在于包中),后跟任意数量的项目,后跟一个结束标记(也不在包中).
链是通过拼凑n元组形成的(顺序很重要),作为进一步的放松,让我们说n值对于所有元组是相同的.在实践中,我正在使用n = 3.链条可以"混合"而不是连接,如果它们具有重叠元素.例如,考虑(a,b,c)和(c,d,e).可以作为(a,b,c,d,e)连接.同样地,(a,b,c)和(b,c,d)可以连接为(a,b,c,d).一些元组可能在第一个位置具有开始标记,并且一些标记在最后位置具有结束标记,这当然允许存在解决问题的方法.
因此,在我看来,问题的确切解决方案通常是不易处理的.为了获得问题的"好"解决方案,需要某种优化算法.我可以忍受的"好"解决方案.
我开始的是一种贪婪的方法,在第一次通过时,你会发现包含袋中元素数量最多的元组,任意打破关系.创建一个数据结构,它保存我们迄今为止构建的链,并将选定的元组粘贴到此数据结构中.将问题拆分为2个子问题,即开始令牌侧和结束令牌侧.在子问题1的数据结构的第一个标记是起始标记并且子问题2的最后一个标记是结束标记之前,增长链以使我们尽快找到停止条件(开始或结束标记取决于在子问题上,同时也试图尽快排出袋子的内容.
有人在任何地方看到这个问 有关如何改进(或正常工作)此算法的任何想法?这是我正在解决的一个真正的问题,它是一个更大系统的智能部分,不是玩具问题或家庭作业问题.
编辑
对不起我今天一直远离电脑.我将尝试发布一个示例解决方案,该解决方案不是太微不足道,但也不会太复杂.
鉴于:
Bag = {A, B, C, D}
(为了示例,我把它设为一组,但每个项目可以出现多次)/ = Start Token\ = End Token3元组(三元组):为了简化命名,我将它们标记为ag.小写字母在问题中没有实际功能.
(/,A, E) a
(/,C, D) b
(/,G, H) c
(D,B, A) d
(C,G, H) e
(B,A, \) f
(G,H, \) g
Run Code Online (Sandbox Code Playgroud)解决方案:如果我们将b,d和f链接在一起,我们就会得到(/,C,D,B,A,\).
这是包含包中所有元素的最短链,如果计算开始和结束标记,则该长度为6.通常,最短路径的长度为| BAG | + 2,如果它确实存在.我希望我的问题陈述现在更有意义.
我在Android上写一个文字游戏.这是我的第一个应用程序,所以我的知识几乎不存在.
我想要做的是使用JWI访问WordNet词典.这需要指定WordNet词典的文件路径.
根据我的阅读,Android"资产"不能通过简单的文件路径获得,但JWI初始化WordNet词典API所需的是字典文件磁盘位置的URL.
那么,最佳行动方案是什么?我应该在启动时将资产复制到Android设备上的已知文件夹中吗?我想不出更好的方法,但这对我来说似乎完全是愚蠢的.
任何帮助感激不尽.