我正在尝试加入sqlalchemy中的同一个表.这是我尝试过的最小版本:
#!/usr/bin/env python
import sqlalchemy as sa
from sqlalchemy import create_engine
from sqlalchemy.orm import mapper, sessionmaker, aliased
engine = create_engine('sqlite:///:memory:', echo=True)
metadata = sa.MetaData()
device_table = sa.Table("device", metadata,
sa.Column("device_id", sa.Integer, primary_key=True),
sa.Column("name", sa.String(255), nullable=False),
sa.Column("parent_device_id", sa.Integer, sa.ForeignKey('device.device_id')),
)
class Device(object):
device_id = None
def __init__(self, name, parent_device_id=None):
self.name = name
self.parent_device_id = parent_device_id
def __repr__(self):
return "<Device(%s, '%s', %s)>" % (self.device_id,
self.name,
self.parent_device_id )
mapper(Device, device_table)
metadata.create_all(engine)
db_session = sessionmaker(bind=engine)()
parent = Device('parent')
db_session.add(parent)
db_session.commit()
child = Device('child', parent.device_id)
db_session.add(child) …Run Code Online (Sandbox Code Playgroud) DataSet ds = GetExcelToXml("test.xls");
string filename = @"C:\test.xml";
FileStream myFileStream = new FileStream(filename, FileMode.Create);
XmlTextWriter myXmlWriter = new XmlTextWriter(myFileStream, Encoding.Default);
ds.WriteXml(myXmlWriter);
myXmlWriter.Close();
Run Code Online (Sandbox Code Playgroud)
输出Xml
<NewDataSet>
<Table>
<UserName>bla1</User_Name>
<Mail>bla1@bla2.com</Mail>
<Address>World</Address>
</Table>
</NewDataSet>
Run Code Online (Sandbox Code Playgroud)
我需要Xml节点名称
<ROWS>
<ROW>
<UserName>bla1</User_Name>
<Mail>bla1@bla2.com</Mail>
<Address>World</Address>
</ROW>
</ROWS>
Run Code Online (Sandbox Code Playgroud)
怎么做 ?
我有两个没有任何级联删除的表.我想删除所有子对象的父对象.我是这样做的
//get parent object
return _dataContext.Menu.Include("ChildMenu").Include("ParentMenu").Include("Pictures").FirstOrDefault(m => m.MenuId == id);
//then i loop all child objects
var picList = (List<Picture>)menu.Pictures.ToList();
for (int i = 0; i < picList.Count; i++)
{
if (File.Exists(HttpContext.Current.Server.MapPath(picList[i].ImgPath)))
{
File.Delete(HttpContext.Current.Server.MapPath(picList[i].ImgPath));
}
if (File.Exists(HttpContext.Current.Server.MapPath(picList[i].ThumbPath)))
{
File.Delete(HttpContext.Current.Server.MapPath(picList[i].ThumbPath));
}
//**what must i do here?**
//menu.Pictures.Remove(picList[i]);
// DataManager dm = new DataManager();
// dm.Picture.Delete(picList[i].Id);
//menu.Pictures.de
//_dataContext.SaveChanges();
//picList[i] = null;
}
//delete parent object
_dataContext.DeleteObject(_dataContext.Menu.Include("ChildMenu").Include("ParentMenu")
.Include("Pictures").FirstOrDefault(m => m.MenuId == id););
_dataContext.SaveChanges();
Run Code Online (Sandbox Code Playgroud) 我正在尝试使用Tkinter编写登录窗口,但我无法以星号格式隐藏密码文本.这意味着密码输入是纯文本,必须避免.知道怎么做吗?
我正在努力将基于Access的系统重新开发到c#.net,但是当MS从办公室2003到办公室2007时,他们删除了访问中的图片编辑器 - 这意味着以前存储的图片将不再显示在系统中.该公司的人做了一个黑客,基本上使用excel在后台保存了VBA图像(如果你需要它我可以获得更多信息)但基本上它意味着仍然可以使用访问图像控件(对象绑定帧).
但是,我现在遇到了尝试在.NET应用程序中显示这些问题的问题,并且经过无数天尝试操作字节数组的不同方法后,我接近放弃了.我尝试了至少8个不同的建议解决方案,每个解决方案在执行Image.fromStream()时以"参数未识别"异常结束.下面是迄今为止让我最接近的代码:
private void imageExtractTest()
{
LogOnDataSetTableAdapters.QueriesTableAdapter qa =
new LogOnDataSetTableAdapters.QueriesTableAdapter();
object docO = qa.GetLogonImage();
if (docO == null || !(docO is byte[]))
{
return;
}
byte[] doc = (byte[])docO;
MemoryStream ms = new MemoryStream();
ms.Write(doc, 0, doc.Length);
int firstByte;
int secondByte;
ms.Seek(0, SeekOrigin.Begin);
firstByte = ms.ReadByte();
secondByte = ms.ReadByte();
if (firstByte != 0x15 && secondByte != 0x1C)
{
//ErrorResponse("Stored object is not an Access File.");
return;
}
int fileTypeLoc = 20; // begin of the file type …Run Code Online (Sandbox Code Playgroud) 在Tomcat 5.5服务器上,我在系统类路径中放了一个类(并修改catalina.bat来选择它),或者如果我将类放在共享的lib目录中.现在,如果我有两个不同的应用程序使用相同的类,它们的WEB-INF lib/classes目录中没有该类,则它们使用该类的相同实例.我理解一个类加载器将委托给它的父类加载器的概念,如果它找不到它,那么在这种情况下,因为该类不存在于WEB-INF/classes或WEB-INF/lib中WebAppX类加载器将分别尝试共享,公共和系统类加载器.
然而,这对我来说似乎很奇怪,两个不同的应用程序可以使用此方法共享上下文.有人可以帮我理解为什么会这样.例如,在下面的代码中,当共享CommonCounter时,两个servlet分别部署在单独的战争中,并且它们可以读取由另一个增加的计数器值.
编辑 对我而言,两个独立的应用程序可以以这种方式共享上下文.实际上,如果它们具有相同的类实例,它们甚至可以在两个不同的应用程序中实现多线程/同步,这看起来非常违反直觉.
package com.test;
public class CommonCounter {
public static int servlet1;
public static int servlet2;
}
public class Servlet1 extends javax.servlet.http.HttpServlet implements javax.servlet.Servlet {
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
CommonCounter.servlet1++;
System.out.println("Other one had "+CommonCounter.servlet2+" hits");
}
}
public class Servlet2 extends javax.servlet.http.HttpServlet implements javax.servlet.Servlet {
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
CommonCounter.servlet2++;
System.out.println("Other one had "+CommonCounter.servlet1+" hits");
}
}
Run Code Online (Sandbox Code Playgroud) 如何where在Oracle 9i 的条件中使用计算列 ?
我想用类似的东西
select decode (:pValue,1,
select sysdate from dual,
select activation_date from account where AcNo = 1234) as calDate
where caldate between startDate and endDate;
Run Code Online (Sandbox Code Playgroud) 我在编写NPPExec脚本(用于Notepad ++)时无法使用Microsoft的csc.exe编译C#源代码.我没有问题让MinGW启动并运行我的c ++东西,但是相同的脚本结构似乎对C#不起作用.有没有人有一个有效的C#NPPExec脚本?
三个快速笔记:
虽然我的mingw安装到没有空格的路径(\ MinGW\bin),但我的C#编译器似乎埋没在\ Program Files \中,这是一个包含多个空格的路径.这有关系吗?
我能够使用Microsoft SDK安装的命令提示符(我认为设置一些环境变量)编译,所以我知道编译器工作.
在NPPExec选项框中,我选择了FOLLOW $(CURRENT_DIRECTORY).这有关系吗?
谢谢.
我有一个1000行的文件,每行有2个单词,用空格分隔.只有当最后一个字长超过7个字符时,如何打印每一行?我可以使用awk RLENGTH吗?perl有一个简单的方法吗?