On Tue, Dec 19, 2017 at 3:02 AM, Tom Tanner
<dontsendemailher...@gmail.com> wrote:
> I'm using SQLAlchemy with the Python library Flask.
>
> How do I query an object from a database, make a copy of it, and save that
> copy to the database?
>
> Example of querying an object.
> someObj = db.session.query(SomeDataTable).filter_by(id=someID).first()
>
>
> I want to save a copy of `someObj` to the table. How do I do this?

OK so "copy" we will take to mean, a new row in the table, with all
the same data, *except* for the primary key, as that has to be
different.

The kind of primary key your object has is important here.   Let's say
it's a single integer "id" column that is generated from the database.
  You'd do this:

from sqlalchemy.orm import make_transient
make_transient(someObj)   # someObj is no longer in the session
del someObj.id   # assume this is the primary key
session.add(someObj)
session.commit()


if OTOH your object has a natural primary key (one that you set in
python), then instead of "del someObj.id" you would assign a new
primary key value to be used.


that's it !



 All you do is this:




>
> --
> SQLAlchemy -
> The Python SQL Toolkit and Object Relational Mapper
>
> http://www.sqlalchemy.org/
>
> To post example code, please provide an MCVE: Minimal, Complete, and
> Verifiable Example. See http://stackoverflow.com/help/mcve for a full
> description.
> ---
> You received this message because you are subscribed to the Google Groups
> "sqlalchemy" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to sqlalchemy+unsubscr...@googlegroups.com.
> To post to this group, send email to sqlalchemy@googlegroups.com.
> Visit this group at https://groups.google.com/group/sqlalchemy.
> For more options, visit https://groups.google.com/d/optout.

-- 
SQLAlchemy - 
The Python SQL Toolkit and Object Relational Mapper

http://www.sqlalchemy.org/

To post example code, please provide an MCVE: Minimal, Complete, and Verifiable 
Example.  See  http://stackoverflow.com/help/mcve for a full description.
--- 
You received this message because you are subscribed to the Google Groups 
"sqlalchemy" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sqlalchemy+unsubscr...@googlegroups.com.
To post to this group, send email to sqlalchemy@googlegroups.com.
Visit this group at https://groups.google.com/group/sqlalchemy.
For more options, visit https://groups.google.com/d/optout.

Reply via email to